Код: Выделить всё
SELECT tbPacientesComunicacao.id
FROM tbPacientesComunicacao
WHERE tbPacientesComunicacao.idRefUser = 1
AND tbPacientesComunicacao.idRefPaciente = 4
AND tbPacientesComunicacao.id IN (
SELECT idRefComunicacao
FROM tbPacientesComunicacaoDestinatarios
WHERE idRefUser IN (2,8)
);
Таблица tbPacientesComunicacao
id
описание
1
Что-то
Таблица tbPacientesComunicacaoDestinatarios
idRefComunicacao
UserID
< /thead>
1
5
1
7
Когда вставляется новая запись, мне нужно проверить, не соответствует ли эта запись каким-либо сообщениям, уже имеющимся в базе данных. Поэтому я передаю идентификаторы пользователей в массиве(5,8), а затем мне нужно как-то проверить, есть ли в базе данных что-то, что ТОЧНО соответствует этой комбинации идентификаторов пользователей, в этом тесте этого не должно быть. совпадение, потому что у меня есть 5 и 7, а не 5 и 8, но использование «in» говорит, что оно сопоставлено, потому что найдено хотя бы одно из них... как я могу определить, что это совпадение только в том случае, если все числа в массиве соответствуют идентификатору пользователя таблицы?
Подробнее здесь: https://stackoverflow.com/questions/786 ... hole-thing
Мобильная версия