powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Получить id диалога по двум юзерам из таблицы связи
7 сообщений из 7, страница 1 из 1
Получить id диалога по двум юзерам из таблицы связи
    #39364336
IcedElect
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Имеется таблица связи юзеров с диалогами:

dialog_id|user_id
1|1
1|2
2|1
2|5

И нужно получить тот диалог, в котором есть они оба.

Заранее большое спасибо!
...
Рейтинг: 0 / 0
Получить id диалога по двум юзерам из таблицы связи
    #39364500
Cosmagnetto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
SELECT id_dialog FROM tbldialogs WHERE id_user IN (1,2)
...
Рейтинг: 0 / 0
Получить id диалога по двум юзерам из таблицы связи
    #39364502
Cosmagnetto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
select id_dialog from tbldialogs where user_id in (1,2) where sum(user_id)=1+2 group by id_dialog



Или так
...
Рейтинг: 0 / 0
Получить id диалога по двум юзерам из таблицы связи
    #39364504
Cosmagnetto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вместо второго where - and
...
Рейтинг: 0 / 0
Получить id диалога по двум юзерам из таблицы связи
    #39364509
Cosmagnetto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SET @usr1=2;
SET @usr2=5;
CREATE TEMPORARY TABLE group_dialogs ENGINE = MEMORY AS
SELECT
id_dialog,
SUM(user_id) AS sm
FROM
tbldialogs
WHERE user_id IN (@usr1, @usr2)
GROUP BY id_dialog;

SELECT
id_dialog
FROM
group_dialogs
WHERE sm = @usr1+@usr2;
DROP TABLE group_dialogs;
...
Рейтинг: 0 / 0
Получить id диалога по двум юзерам из таблицы связи
    #39364510
Cosmagnetto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
SET @usr1=2;
SET @usr2=5;
CREATE TEMPORARY TABLE group_dialogs ENGINE = MEMORY AS
SELECT
  id_dialog,
  SUM(user_id) AS sm
FROM
  tbldialogs
WHERE user_id IN (@usr1, @usr2)
GROUP BY id_dialog;

SELECT
  id_dialog
FROM
  group_dialogs
WHERE sm = @usr1+@usr2;
DROP TABLE group_dialogs;
...
Рейтинг: 0 / 0
Получить id диалога по двум юзерам из таблицы связи
    #39364532
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
select t1.dialog_id
from table t1, table t2
where t1.user_id='1'
  and t2.user_id='2'
  and t1.dialog_id = t2.dialog_id
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Получить id диалога по двум юзерам из таблицы связи
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]