Updating data in Oracle
Update operation is used to modify data in oracle.
Types of Update operation:
- SINGLE ROW UPDATE
- MULTIPLE ROW UPDATE
- UPDATE WITH SUBQUERY
SINGLE ROW UPDATE:
This update operation will update only one row of a table.
SELECT EMPLOYEE_ID,
FIRST_NAME,
LAST_NAME,
JOB_ID,
HIRE_DATE,
SALARY,
DEPARTMENT_ID
FROM EMP_SELECT
WHERE DEPARTMENT_ID = 30; We want to update the salary of EMPLOYEE_ID 208 to 2500.
UPDATE EMP_SELECT SET SALARY = 2500 WHERE EMPLOYEE_ID = 208;
SELECT EMPLOYEE_ID,
FIRST_NAME,
LAST_NAME,
JOB_ID,
HIRE_DATE,
SALARY,
DEPARTMENT_ID
FROM EMP_SELECT
WHERE DEPARTMENT_ID = 30; MULTIPLE ROW UPDATE:
This update operation will update multiple rows of a table.
UPDATE EMP_SELECT SET SALARY = SALARY * 1.1 WHERE DEPARTMENT_ID = 30;
SELECT EMPLOYEE_ID,
FIRST_NAME,
LAST_NAME,
JOB_ID,
HIRE_DATE,
SALARY,
DEPARTMENT_ID
FROM EMP_SELECT
WHERE DEPARTMENT_ID = 30; In the above example we have updated all the salaries of DEPARTMENT_ID 30 with 10% increment.
UPDATE WITH SUBQUERY:
We are inserting a new row in EMP_SELECT table.
INSERT INTO EMP_SELECT (EMPLOYEE_ID,
FIRST_NAME,
LAST_NAME,
SALARY,
DEPARTMENT_ID
)
VALUES ('212',
'Robin',
'Smith',
'3000',
'30'
); SELECT EMPLOYEE_ID,
FIRST_NAME,
LAST_NAME,
JOB_ID,
HIRE_DATE,
SALARY,
DEPARTMENT_ID
FROM EMP_SELECT
WHERE DEPARTMENT_ID = 30; Now, we will update the JOB_ID and HIRE_DATE of EMPLOYEE_ID 212 with the same of EMPLOYEE_ID 211.
UPDATE EMP_SELECT
SET JOB_ID = (SELECT JOB_ID
FROM EMP_SELECT
WHERE EMPLOYEE_ID = 211),
HIRE_DATE = (SELECT HIRE_DATE
FROM EMP_SELECT
WHERE EMPLOYEE_ID = 211)
WHERE EMPLOYEE_ID = 212; SELECT EMPLOYEE_ID,
FIRST_NAME,
LAST_NAME,
JOB_ID,
HIRE_DATE,
SALARY,
DEPARTMENT_ID
FROM EMP_SELECT
WHERE DEPARTMENT_ID = 30; RELATED TOPICS: