#sql #oracle
#sql #Oracle
Вопрос:
в чем разница между AND
OR
операторами and?
В онлайн-классе показано, что AND
отображается комбинация из 2 разных условий, что сбивает с толку OR
, делает то же самое, вот пример:
select employee_id , first_name,job_id,salary
FROM employees
where department_id = 10
OR Department_ID = 20
AND job_id in ('FT_MGR','AC_MGR');
Комментарии:
1.
a and b
условие будет передано, еслиa
b
будут переданы оба и .a or b
условие будет передано, если передано либоa
илиb
. Также обратите внимание, что без круглых скобокand
имеет приоритет надor
, поэтому ваш запрос вернет всех сотрудников сdepartment_id = 10
и только тех сотрудников, уdepartment_id = 20
которых есть job_id ‘FT_MGR’ или ‘AC_MGR’. В целом семантика полностью совпадает с логическимиAND
OR
операторами and
Ответ №1:
И оператор означает, что оба (department_id = 10) также ИСТИННЫ (Department_ID = 20), результат ИСТИНЕН
Оператор OR означает, что либо (department_id = 10) ИСТИННО, либо (Department_ID = 20) ИСТИННО, результат ИСТИНЕН