6

我正在编写一个视频游戏并使用 MySQL 显示一个图标,显示玩家宝藏所在的位置。数据库按 X 和 Y 将位置存储在方形地图上。我还想计算每个正方形上的项目数。

所以给定一张这样的表

Id   x   y
==  ==  ==
1    2   3
2    3   2
3    3   2
4    4   4
5    4   4
6    4   4

我想返回一些东西

x y count
= = =====
4 4 3
3 2 2
2 3 1
4

3 回答 3

12

对结果使用GROUP BY子句。

Select x, y, count(*) as 'count' from mytable group by x, y
于 2012-06-26T00:44:07.617 回答
5

连接你的 2 列并使用 DISTINCT 怎么样?

Select x, y, count(DISTINCT CONCAT(x, '_', y)) as 'count' from mytable group by x, y
于 2013-01-09T04:22:13.470 回答
0
SELECT x,y,SUM(1) FROM table GROUP BY x,y;
于 2012-06-26T00:43:14.780 回答