所以我对 mySQL 有点陌生,可以弄清楚如何做到这一点。我有一张表格,其中包含 worker 、他们工作的建筑物以及他们工作的办公室。
我正在尝试进行查询,该查询将返回此表,其中包含一个额外的列,说明有多少人在同一个房间工作。所以在这个例子中,Paul 和 Tim 都在 xxx1 工作,所以列会显示 2,但对于 John,它会显示 1,他是那个房间里唯一的人。
| worker | office building | room number |
------------------------------------------------
| john | xxx | 0 |
| paul | xxx | 1 |
| tim | xxx | 1 |
| Dave | yyy | 0 |
| Ty | yyy | 1 |
| Luke | yyy | 1 |
最佳答案
试试这个:
SELECT t1.*,
(SELECT COUNT(1)
FROM mytable t2
WHERE t2.`room number` = t1.`room number`
)
FROM mytable t1
我建议你不要使用带空格的字段名,使用下划线代替空格。
关于mysql - 表中具有相同值的其他行的计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22391452/