连接表中多于X行的两个表

时间:2012-04-03 13:46:16

标签: sql join where rows

如果我们有两张桌子,请说; “用户”和“图片”,我们如何选择至少拥有X个图像的用户?我相信我需要使用COUNT(),但不确定整体语法...

“users”表作为 user_id 字段,“images”行中的每个图像都有一个“user_id”,因此可以使用这些表连接两个表格。

我试过了:

SELECT users.*, SELECT COUNT(*) 
FROM images 
WHERE images.user_id=users.user_id AS num_images 
WHERE num_images>2 

但没有运气 - 语法错误,但不确定如何正确执行内部查询,或只是加入图像表中至少有2行的表。

1 个答案:

答案 0 :(得分:2)

SELECT u.user_id,COUNT(*)
FROM users u INNER JOIN images i
ON u.user_id=i.user_id
GROUP BY u.user_id
HAVING COUNT(*)>2;