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: