2016-06-28 3 views
-2

의 SQL 서버 규칙 :두 쿼리의 차이점은 무엇 우선 순위

쿼리 # 1 :

select * 
from Employee 
where Job_id = 'SA_REP' OR Job_id = 'AD_PRES' AND salary > 15000 

출력 :

EmpId Last_name Job_ID Salary 
1 King AD_PRES 24000 
2 Abel SA_REP 11000 
3 Taylor SA_REP 8600 
4 Grant SA_REP 7000 

쿼리 # 2 :

select * 
from Employee 
where (Job_id = 'SA_REP' OR Job_id = 'AD_PRES') AND salary > 15000 

출력 :

당신이 상관없이 급여가 어떤 'SA-REP'의 작업 ID로 모든 직원을 얻을 것이다 첫 번째 쿼리에서
EmpId Last_name Job_ID Salary 
1 King AD_PRES 24000 
+0

한 가지 차이점은 AND와 OR의 우선 순위가 같거나 다를 경우 조회하지 않고도 두 번째 작업 순서가 명확하다는 것입니다. –

+0

자신의 실험에서 첫 번째 것은'Job_id = 'SA_REP'또는 (Job_id = 'AD_PRES'와 salary> 15000) '와 동일하다는 것을 알 수 있습니다. 또한 연산자 우선 순위를 쉽게 조사 할 수 있습니다. –

답변

0

16,는 것입니다 두 번째 쿼리에서는 'AD_PRES'의 작업 ID와 종업원 급여> 15000 급여> 15000이고 Job_ID가 'SA_REP'또는 'AD_PRES'인 직원을 확보하십시오.