Ответ 1
SELECT *
FROM table1
INNER JOIN table2
ON table1.threadid=table2.threadid
WHERE table2.threadcontributor IN ('1','52512')
GROUP BY table1.PrimaryKey
HAVING COUNT(DISTINCT table2.threadcontributor) = 2
Я создал свой форум. При выполнении поиска я хочу найти любые темы, в которых участвовали два (или более) конкретных пользователя. Я придумал это:
SELECT * FROM table1 INNER JOIN table2
ON table1.threadid=table2.threadid
WHERE table2.threadcontributor IN ('1','52512')
Прежде чем понимать, что на самом деле это означает '1' OR '52512'
.
Есть ли способ заставить его работать так, чтобы все идентификаторы совпадали?
SELECT *
FROM table1
INNER JOIN table2
ON table1.threadid=table2.threadid
WHERE table2.threadcontributor IN ('1','52512')
GROUP BY table1.PrimaryKey
HAVING COUNT(DISTINCT table2.threadcontributor) = 2