繁体   English   中英

选择输入在另一列中的不同值

[英]Selecting distinct values where input is in another column

考虑下表:

+----+------+--------------+
| id | r_usr_id | s_usr_id |
+----+------+--------------+
| 1  | 1        |  2       |
| 2  | 2        |  1       |
| 2  | 3        |  1       |
| 2  | 3        |  2       |
| 2  | 3        |  1       |
| 2  | 3        |  2       |
+----+------+--------------+

我想提取输入 id 在rs所有唯一id值。

例如,如果我通过用户 1,我想要的结果是:

+-----+
| ids |
+-----+
| 2   |
| 3   |
+-----+

如果我使用用户 2,结果将是:

+-----+
| ids |
+-----+
| 1   |
| 3   |
+-----+

您可以在这里做的是使用DISTINCT选择语句和IN运算符在其中一列中搜索您的 ID,如下所示:

SELECT DISTINCT id
FROM myTable
WHERE @myInput IN (rColumn, sColumn);

根据您的示例数据,我假设您想检索s_usr_id匹配的所有r_usr_id ,反之亦然?

SELECT r_usr_id FROM theTable WHERE s_usr_id = 1
UNION
SELECT s_usr_id FROM theTable WHERE r_usr_id = 1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM