@Loligan

Как сделать выборку данных по полю, при условии что id в данных связывающей таблицы встречается N кол-во раз?

Таблица

------ TABLE 1 ----
id | inc
value | value
id_table_two | int

Раньше мне приходилось делать что-то вроде запрос:

SELECT * FROM table_1 WHERE value='one' OR value='two' OR value='three'

потом я через массив убирал лишние данные в которых значения one,two,three не встречалось сразу (т.е. удалял те где есть one, two но нет three и т.д.) т.е. встречались именно 3 эти значения, но из-за больших даннных начало бить по памяти. Помогите составить единый sql запрос для выборки таких даннных
  • Вопрос задан
  • 806 просмотров
Пригласить эксперта
Ответы на вопрос 1
minamoto
@minamoto
* замените на id, в конце допишите:
group by id
having count(distinct value) = 3
Под id я тут подразумеваю поле, для которого должны существовать все три value, возможно это id_table_two у вас будет, или даже набор полей.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы