#java #mysql #sql #hibernate #spring-data-jpa
Вопрос:
Дана 1 реляционная таблица
Doctor_ID | Идентификатор клиента |
---|---|
2 | 2 |
2 | 3 |
2 | 4 |
3 | 5 |
4 | 2 |
4 | 3 |
И я хочу, чтобы все случаи, когда client_id не равен 3, игнорировали один и тот же идентификатор doctor_id.
В этом примере я бы получил только 4-ю строку…
Doctor_ID | Идентификатор клиента |
---|---|
3 | 5 |
Как я мог добиться чего-то подобного?
Ответ №1:
Этот запрос с NOT EXISTS
даст вам необходимые результаты.
SELECT * FROM myTable a
WHERE NOT EXISTS (
SELECT 1 FROM myTable b WHERE a.Doctor_ID = b.Doctor_ID AND Client_ID = 3
)
NOT EXISTS
Будет отфильтрован идентификатор врача-муравья, у которого идентификатор клиента равен 3.