как получить тот же идентификатор чата, который обычно встречается в двух строках. - PullRequest
0 голосов
/ 10 мая 2019

Я хочу, чтобы запрос извлекал идентификатор чата между двумя пользователями. У меня уже есть оба идентификатора пользователя, но я не знаю, как это сделать.Есть много идентификаторов чата, сохраненных с каждым идентификатором пользователя, но мне нужно только получить 2 записи, которые имеют одинаковый идентификатор чата и 2 различных идентификатора пользователя, которые я буду предоставлять запрос. Спасибо за чтение и помощь ....

+-------+-------+
|chat-id|user-id|
+-------+-------+
|1      |1      |
+-------+-------+
|1      |2      |
+-------+-------+
|2      |1      |
+-------+-------+
|2      |3      |
+-------+-------+
|3      |2      |
+-------+-------+
|3      |3      |
+-------+-------+
|4      |1      |
+-------+-------+
|4      |4      |
+-------+-------+

1 Ответ

2 голосов
/ 10 мая 2019

Если вы хотите общаться между двумя конкретными пользователями:

select chat_id
from t
where user_id in (@id1, @id2)
group by chat_id
having count(*) = 2;

Предполагается, что в таблице нет дубликатов.Если это возможно, тогда используйте count(distinct user_id) = 2.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...