table have a data:
-----------------
SQL> select * from sa;
NAME SALA SALARY MAX_SALARY
---------- ---------- ---------- ----------
sathish 1000 2000
saro 2500 1250
mathu 7000 5000
karthi 1700 900
Result:
--------
update sa set max_salary =
(
select x.Max_salary1 from
(
select name,max(sal) Max_Salary1 from
(
select name,sala sal from sa
union all
select name,salary sal from sa)
group by name)x where sa.name = x.name
);
SQL> select * from sa;
NAME SALA SALARY MAX_SALARY
---------- ---------- ---------- ----------
sathish 1000 2000 2000
saro 2500 1250 2500
mathu 7000 5000 7000
karthi 1700 900 1700