从没有多个相同用户ID的表中选择数据

时间:2013-07-07 02:30:56

标签: mysql sql database

我正在尝试选择x_id = 1的所有元素,但是对于具有相同user_id的结果将有多行,我只希望它为每个用户ID(而不是多个)显示一个结果。我怎样才能在SQL中完全丢失?

表:

id | x_id | USER_ID

3 个答案:

答案 0 :(得分:3)

SELECT DISTINCT user_id FROM table WHERE x_id = 1;

答案 1 :(得分:1)

从x_id = 1;

中选择不同的user_id

答案 2 :(得分:0)

SELECT a.user_id
  FROM a a
 WHERE a.x_id = 1
 GROUP BY a.user_id

- 或 -

SELECT DISTINCT a.user_id
  FROM a a
 WHERE a.x_id = 1

这些返回等效的结果集。我个人的偏好是使用GROUP BY,因为我有时想要返回行数,或者使用其他一些聚合函数,这是DISTINCT无法做到的。