我正在尝试查找将执行以下功能的SQL查询。我希望能够使用sql而不是使用c#.net数组和处理。
以下是表格:它只包含两列。
conversationID |用户ID
我将有一个userID列表,我想确定哪些conversationID对应于userID列表。 conversationID将是未知的。
换句话说,我想选择一个唯一的“conversationID”列,该列也有一行,其中userID等于ID列表中的所有id。
例如,我有一个userID列表,< 1,2> 表格看起来像......
conversationID | userID
1 | 1
1 | 2
2 | 3
2 | 4
这将返回“1”。
由于
修改 根据Sebas的评论,这是一个查询,可以获取一个用户的所有conversationID。我可以将此更改为基于多行吗?也许带着“AND”?
从表WHERE userID ='1'
中选择DISTINCT conversationID
答案 0 :(得分:2)
您可以使用DISTINCT
或GROUP BY
:
使用DISTINCT
SELECT DISTINCT conversationID
FROM tbl
WHERE userID IN ('1','2')
使用GROUP BY
SELECT conversationID
FROM tbl
WHERE userID IN ('1','2')
GROUP BY conversationID