[英]mysql: COUNT returns wrong number
大家。 我有2张桌子
|lobby_id (pk, a_increment) | t_id | u_id |
-------------------------------------------
|1 | 6 | 131 |
|tid | t_name | t_desc | max_size |
----------------------------------
|6 | GO TO HELL | DSADA | 13 |
|7 | GO TO das | DSADA | 9 |
|7 | GO TO das | DSADA | 9 |
我需要从大厅计算t_id = 6(在Trips表中的tid)并显示u_id并显示:从(trips)我的SQL查询中计算count和max_size如此简单:
SELECT count(b.u_id) as counter, a.size as p_size
from trips a
left join lobby b ON b.t_id=6
但查询结果显示我的计数器不是1 = max_size = 13,该查询返回计数器3和max_size 13
您需要在查询的ON
子句中两个表中的谓词匹配记录:
SELECT count(b.u_id) as counter, b.max_size
from trips a
left join lobby b ON a.tid = b.tid
WHERE a.t_id=6
我根本不明白为什么要join
:
SELECT COUNT(*) as counter, MAX(a.size) as p_size
FROM trips t
WHERE t.tid = 6
所有信息都在一个表中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.