像这样:
SELECT s.*, count( logs.* ) as ssh_count
FROM servers s
LEFT JOIN logs ON s.ip_address = logs.server_ip
但是我收到该查询错误:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '* ) as ssh_count FROM servers s LEFT JOIN logs ON s.ip_address = logs.server_ip LIMIT' at line 1
我认为这是因为您无法在count函数中处理表。
我可以使用子查询来执行此操作,但这可能会缓慢降低查询速度。
有什么更好的方法?
最佳答案
您可以寻址表列,但不能寻址table.*
,例如,可以这样做:
SELECT s.*, count( logs.server_ip ) as ssh_count
FROM servers s
LEFT JOIN logs ON s.ip_address = logs.server_ip
关于mysql - 我可以计算联接表中的行数吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6290805/