SQL, где используются оба И ИЛИ

#sql

#sql

Вопрос:

У меня проблема с получением запроса с помощью оператора И ИЛИ

 SELECT *
FROM [DPPLBMS].[dbo].[STUDENTS_DETAILS]
where AttendingConvocation='0' and (grade = 'A') or (grade='B') or (Grade='C')
  

Я пытаюсь просмотреть данные с посещением собрания = 0, а оценка — только A, B amp; C.

Результат показывает обе записи, посещающие собрание показывают записи 0 = Не посещать и 1 = Посещать собрание

Комментарии:

1. Используйте круглые скобки вокруг или, поскольку вы хотите их объединить

Ответ №1:

Попробуйте это.

 SELECT * FROM [DPPLBMS].[dbo].[STUDENTS_DETAILS]
where AttendingConvocation='0' and (grade = 'A' or grade='B' or Grade='C')
  

Или, может быть, даже лучше:

 SELECT * FROM [DPPLBMS].[dbo].[STUDENTS_DETAILS]
where AttendingConvocation='0' and grade in ('A', 'B', 'C')