데이터베이스/SQL

1873. Calculate Special Bonus

칼퇴시켜주세요 2022. 12. 3. 19:50
728x90

Employees 테이블에서 employee_id 가 짝수이거나 name이 M으로 시작하는 직원은 0의 bonus를 받고 그 외 직원은 salary의 100%를 보너스를 받도록  SQL을 작성하는 문제이다. (단 employee_id를 기준으로 정렬해야한다) 

 

이 문제의 핵심은 IF 와 MOD(%)연산을 적절히 사용하는 것이다. 기존에 SELECT에서 단일 애트리뷰트만 조건없이 조회하였지만 SQL에 다양한 기능이 있는것을 알게 되었다.

 

select employee_id, if(employee_id % 2 = 0 or name like 'M%' ,0, salary) as bonus
from Employees
order by employee_id asc
반응형

'데이터베이스 > SQL' 카테고리의 다른 글

196. Delete Duplicate Emails  (0) 2022.12.05
627. Swap Salary  (0) 2022.12.03
183. Customers Who Never Order  (0) 2022.11.30
584. Find Customer Referee  (0) 2022.11.30
1757. Recyclable and Low Fat Products  (1) 2022.11.30