MERGE INTO bonuses b
USING (
SELECT employee_id, salary, dept_no
FROM employee
WHERE dept_no =20) e
ON (b.employee_id = e.employee_id)
WHEN MATCHED THEN
UPDATE SET b.bonus = e.salary * 0.1
DELETE WHERE (e.salary < 40000)
WHEN NOT MATCHED THEN
INSERT (b.employee_id, b.bonus) VALUES (e.employee_id, e.salary * 0.05) WHERE (e.salary > 40000);
----------------------------------------------------
MERGE INTO bonuses b
USING dual e
ON (b.employee_id = ? )
WHEN MATCHED THEN
UPDATE SET b.bonus = e.salary * 0.1
WHEN NOT MATCHED THEN
INSERT (b.employee_id, b.bonus) VALUES (e.employee_id, e.salary * 0.05) WHERE (e.salary > 40000);
[오라클/oracle] SQL 에디터로 vi 사용하기 (0) | 2015.04.20 |
---|---|
[오라클/oracle] 내(현재) 계정 권한 조회하기 (0) | 2015.04.20 |
[Oracle/SQL] 특정 사용자의 권한 조회 (0) | 2015.04.20 |
[오라클/oracle] Oracle Database Character set 변경(EUC-KR을 UTF8 변경) (0) | 2015.04.20 |
[오라클/oracle] select ... for update (0) | 2015.04.20 |