0

我正在尝试选择 x_id=1 的所有元素,但该结果将有多个具有相同 user_id 的行,我只希望它为每个用户 id 显示一个结果(而不是多个)。我怎么能在完全迷失的 SQL 中做到这一点?

桌子:

一个

编号 | x_id | 用户身份

4

3 回答 3

3

SELECT DISTINCT user_id FROM table WHERE x_id = 1;

于 2013-07-07T02:32:30.177 回答
1

从 x_id = 1 中选择不同的 user_id;

于 2013-07-07T02:34:03.740 回答
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 无法做到这一点。

于 2013-07-07T02:33:13.143 回答