Golgappa.net | Golgappa.org | BagIndia.net | BodyIndia.Com | CabIndia.net | CarsBikes.net | CarsBikes.org | CashIndia.net | ConsumerIndia.net | CookingIndia.net | DataIndia.net | DealIndia.net | EmailIndia.net | FirstTablet.com | FirstTourist.com | ForsaleIndia.net | IndiaBody.Com | IndiaCab.net | IndiaCash.net | IndiaModel.net | KidForum.net | OfficeIndia.net | PaysIndia.com | RestaurantIndia.net | RestaurantsIndia.net | SaleForum.net | SellForum.net | SoldIndia.com | StarIndia.net | TomatoCab.com | TomatoCabs.com | TownIndia.com
Interested to Buy Any Domain ? << Click Here >> for more details...


In EMP table, for those emp whose Hiredate is same, update
their sal by "sal+500" or else for others keep the sal as it
is, how to do it by SQL query

Answers were Sorted based on User's Feedback



In EMP table, for those emp whose Hiredate is same, update their sal by "sal+500" or else..

Answer / sanjaygupta1981

UPDATE emp
SET sal=sal+500
WHERE hiredate IN (SELECT hiredate
FROM employees
HAVING COUNT(*)>1
GROUP BY hiredate)

The above query will update the records of all those employees
whose hiredate is same.

Is This Answer Correct ?    17 Yes 5 No

In EMP table, for those emp whose Hiredate is same, update their sal by "sal+500" or else..

Answer / srinu

Hi Sanjaygupta1981,

Can you please check the query once :
count(*) or count(hiredate).

Except Count(*) Your query looks good.


If any correctons in my advise please let me
know "srinu.srinuvas@gmail.com"

Is This Answer Correct ?    6 Yes 1 No

In EMP table, for those emp whose Hiredate is same, update their sal by "sal+500" or else..

Answer / suraj kedia

Hi Sanjay,
the query u posted is a bit wrong,1st u have to do group by
n then having clause comes n not vise versa. so the final
query will be as below:

UPDATE emp
SET sal=sal+500
WHERE hiredate IN (SELECT hiredate
FROM employees
GROUP BY hiredate
HAVING COUNT(hiredate)>1
)


Hi Srinu,
It doesn't matter whether u write count(*) or
count(hiredate),the answer will always the same but its
better to give count(hiredate) only as it is easier to
understand.

Is This Answer Correct ?    6 Yes 2 No

In EMP table, for those emp whose Hiredate is same, update their sal by "sal+500" or else..

Answer / sanjay gupta

Hi Srinu,

you check the query once again..Query is not wrong..

UPDATE emp
SET sal=sal+500
WHERE hiredate IN (SELECT hiredate
FROM emp
HAVING COUNT(*)>1
GROUP BY hiredate

it'll give the same result whether we write count(*) or
count(hiredate)..
But I agree but its better to give count(hiredate)instead of
COUNT(*)...coz it is easier to understand.

Is This Answer Correct ?    2 Yes 1 No

In EMP table, for those emp whose Hiredate is same, update their sal by "sal+500" or else..

Answer / guest

update emp a set a.sal=a.sal+500 where a.hiredate in(select
max(b.hiredate) from emp b group by b.hiredate having
count(b.hiredate)>1);

or

update emp a set a.sal=a.sal+500 where a.hiredate=(select
max(b.hiredate) from emp b where a.hiredate=b.hiredate group
by b.hiredate having count(b.hiredate)>1);

Is This Answer Correct ?    1 Yes 0 No

In EMP table, for those emp whose Hiredate is same, update their sal by "sal+500" or else..

Answer / sukanta

update emp a set a.sal=a.sal+500 where a.hiredate in(select
max(b.hiredate) from emp b group by b.hiredate having
count(b.hiredate)>1);

or

update emp a set a.sal=a.sal+500 where a.hiredate=(select
max(b.hiredate) from emp b where a.hiredate=b.hiredate group
by b.hiredate having count(b.hiredate)>1);

above is Posted By

Sukanta

Is This Answer Correct ?    0 Yes 0 No

In EMP table, for those emp whose Hiredate is same, update their sal by "sal+500" or else..

Answer / srinivas

Hi suraj no need to put first group by and then having
clause
we can give any order it will work
please check and let me know

Is This Answer Correct ?    1 Yes 2 No

In EMP table, for those emp whose Hiredate is same, update their sal by "sal+500" or else..

Answer / sbvp

update emp set sal=sal+500

or
alter table emp modify sal=sal+500

Is This Answer Correct ?    1 Yes 28 No

Post New Answer

More Informatica Interview Questions

i have a table like empid ename year month sal 1 x 98 jan 500 1 x 98 feb 500 1 x 98 mar 500 1 x 99 jan 600 1 x 99 feb 600 2 y 98 jan 600 2 y 98 feb 600 2 y 98 mar 600 2 y 99 jan 700 2 y 99 jan 700 and so on i want to find out totsal for every emp on year wise plz help me

2 Answers  


if i have records like these (source table) rowid name 10001 gdgfj 10002 dkdfh 10003 fjfgdhgjk 10001 gfhgdgh 10002 hjkdghkfh the target table should be like these by using expression tranformation. (Target table) rowid name 10001 gdgfj 10002 dkdfh 10003 fjfgdhgjk xx001 gfhgdgh xx002 hjkdghkfh (that means duplicated records should contain XX in there rowid)

5 Answers   iFlex,


Hi, I am new to Informatica, What is a flat file and how to use flat file in infomratica please help me.

10 Answers   CSC,


What is a stored procedure transformation?

0 Answers  


A mapping contains (1) Source Table S_Time ( Start_Year, End_Year ) (2) Target Table Tim_Dim ( Date, Day, Month, Year, Quarter )

1 Answers  


difference between informatica 8.6 and 9

3 Answers   Atos Origin, BA Continnum Solutions, Core Logic,


In mapping f.f as one src and f.f as trg,f.f as src and oracle as trg which is fast? mean which is complete first process

2 Answers   Wipro,


Design a mapping to load a target table with the following values from the above source?

0 Answers   Informatica,


What is dimensional table?

0 Answers  


Explain in detail scd type 2 through mapping.

0 Answers  


what happens if you try to create a shortcut to a non- shared folder?

1 Answers  


A Main workflow "wkf_Main" has multiple sessions (S1, S2...., can I make changes and promte one session (S5) at any time or have to promote whole Workflow "wkf_Main" every time?

4 Answers  


Categories