0

为措辞不当的问题道歉。

我有两张表,分别称为conversationsconversation_users。每个对话都可以有多个用户。字段如下:

对话

  • conv_id
  • conv_author_id
  • 转换日期

对话用户

  • cu_id
  • cu_conv_id
  • cu_user_id

现在,为了避免与相同用户的重复对话。我想检查是否已经存在与 ID 为 12 和 25 的用户的对话。如果存在,我希望获取该对话的 ID。

我该如何构造一个查询来做到这一点?

4

1 回答 1

3

我想检查是否已经与 ID 为 12 和 25 的用户进行了对话。

您可以使用EXISTS

SELECT CASE WHEN EXISTS
(
    SELECT 1 FROM conversation_users cu
    WHERE cu.cu_conv_id = c.conv_id
    AND   cu.cu_user_id IN (12, 25)
) THEN 'Yes, these users are in this conversation' 
  ELSE 'This conversation is between different users' END AS Result
FROM conversations c
于 2013-11-06T11:57:05.590 回答