#sql #postgresql
Вопрос:
Учитывая следующую таблицу FOO;
| Org | Status |
| X | CLOSED |
| X | OPEN |
| Y | OPEN |
| Y | CLOSED |
Как я могу выбрать все записи, кроме тех, где org = Y и статус = ЗАКРЫТ
Таким образом, набор результатов выглядит следующим образом:
| Org | Status |
| X | CLOSED |
| X | OPEN |
| Y | OPEN |
Комментарии:
1. где нет (организация = Y и статус = ЗАКРЫТО)
2. или, если организация <> y или статус <><> закрыта
3. Это становится немного сложнее, если организация или статус могут быть нулевыми.
Ответ №1:
Вы можете сделать это любым из следующих способов:
WHERE (org, status) <> ('Y','CLOSED')
WHERE NOT (org = 'Y' AND status = 'CLOSED')
Ответ №2:
select * from Table where Org != 'Y' and Status != 'CLOSED'
Комментарии:
1. Это тоже работает, но я могу принять только один ответ. Спасибо!