Объединение ИЛИ и И в предложении SQL-сервера запроса

Я хочу выбрать данные из таблицы с предложением, включающим AND и OR.

Вот мой SQL-запрос:

select * 
from WORKTR 
where status='Active' OR status='Inactive'and Start_date=񟭔-02-10'

Тем не менее, запрос выше возвращает только 3 из 10 строк в таблице, что означает, что он не возвращает все строки, которые соответствуют условиям. Пожалуйста, помогите мне показать правильный способ написания запроса.

Всего 2 ответа


Вы должны правильно обернуть ваше состояние, как показано ниже

where status='Active' OR (status='Inactive' and Start_date=񟭔-02-10')

Добавьте скобки, в соответствии с вашими потребностями

select * 
from WORKTR 
where (status='Active' OR status='Inactive)'and Start_date=񟭔-02-10'

ИЛИ

select * 
from WORKTR 
where status='Active' OR (status='Inactive'and Start_date=񟭔-02-10')

ИЛИ

  select * 
    from WORKTR 
    where status IN ('Active','Inactive') and Start_date=񟭔-02-10'