0% found this document useful (0 votes)
30 views5 pages

Subqueries: Duplicate Values (FOR EXAMPLE Same Last - Name)

Uploaded by

nandhuln
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
30 views5 pages

Subqueries: Duplicate Values (FOR EXAMPLE Same Last - Name)

Uploaded by

nandhuln
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

SUBQUERIES

Duplicate values(FOR EXAMPLE same last_name)

SELECT emp_id FROM empl_1148 WHERE salary>(SELECT salary FROM empl_1148 WHERE
last_name='Smith');

Duplicate values(FOR EXAMPLE same dep)

SELECT emp_id,first_name FROM empl_1148 WHERE salary>(SELECT salary FROM


empl_1148 WHERE dep='ADF');

SELECT emp_id,first_name FROM empl_1148 WHERE salary>(SELECT salary FROM empl_1148 WHERE
first_name='Maria');

USING AND
1)Satisfies both condition

SELECT first_name ,emp_id,salary FROM empl_1148 WHERE emp_id=(SELECT emp_id FROM


empl_1148 WHERE emp_id=278) AND salary >(SELECT salary FROM empl_1148 WHERE emp_id=115);
Take empid 278 salary for
comparison

Select firstname,empid,salary from table empl where( EMPID=278 ) AND


salary(25000)>(20,000)

2)Satisfies one condition

SELECT first_name ,emp_id,salary FROM empl_1148 WHERE emp_id=(SELECT emp_id FROM


empl_1148 WHERE emp_id=278) AND salary >(SELECT salary FROM empl_1148 WHERE emp_id=267);

USING OR

1)Display if any one condition satisfies

SELECT first_name ,emp_id,salary FROM empl_1148 WHERE emp_id=(SELECT emp_id FROM


empl_1148 WHERE emp_id=278) OR salary >(SELECT salary FROM empl_1148 WHERE
emp_id=267);

2) SELECT first_name ,emp_id,salary FROM empl_1148 WHERE emp_id=(SELECT emp_id FROM


empl_1148 WHERE emp_id=278) OR salary >(SELECT salary FROM empl_1148 WHERE emp_id=245);

USING GROUP FUNCTIONS

MAX AND MIN

SELECT first_name,salary FROM empl_1148 WHERE salary=(SELECT MAX(salary)


FROM empl_1148) OR salary=(SELECT MIN(SALARY) FROM empl_1148);

GROUPBY AND HAVING

SELECT dep,MAX(salary) FROM empl_1148 GROUP BY dep HAVING MIN(salary)>(SELECT


MIN(salary) FROM empL_1148 WHERE dep='ADF');

Select min salary from table where dep =ADF--------------->15000


Select dep,maximum salary from table compared by group
HR Group la maximum 30000
ADF la maximum 20000
Finance la maximum 25000
Sys admin la maximum 36000
Having min(salary)--->>min(30000,20000,,25000,36000)>15000

MULTIPLE ROW SUBQUERIES

IN

SELECT first_name,salary FROM empl_1148 WHERE salary IN(SELECT salary FROM empl_1148
WHERE dep='ADF');

ANY

Compare pananum(so relational operator must)

1)SELECT first_name,salary FROM empl_1148 WHERE salary > ANY (SELECT salary FROM empl_1148
WHERE dep='ADF') ;

Take minimum one


(15000) and compare
to every value in table

3) SELECT first_name,salary FROM empl_1148 WHERE salary > ANY (SELECT salary FROM empl_1148
WHERE dep='Hernandez') ; 16000
15000
20000
ALL

1)SELECT first_name,salary FROM empl_1148 WHERE salary > ANY (SELECT salary FROM empl_1148
WHERE dep='Hernandez') ;

23000,25000.Take
both values and
compare

2) SELECT first_name,salary FROM empl_1148 WHERE salary > ALL (SELECT salary FROM empl_1148
WHERE last_name='Smith') ;

PAIRWISE COMPARSIONS

Using IN we can check pair(take pair)

1) SELECT emp_id,last_name FROM empl_1148 WHERE (emp_id,last_name) IN (SELECT


emp_id,last_name FROM empl_1148 WHERE emp_id IN (245,278)) AND emp_id NOT IN (109,278);

Omit 278
245 Hernandez Garcia
278 Garcia

2) SELECT first_name,last_name FROM empl_1148 WHERE(first_name,last_name) IN (SELECT


first_name,last_name FROM empl_1148 WHERE dep IN('ADF','HR')) AND last_name NOT IN
('Smith','Davis');

NONPAIRWISE COMPARSIONS

1) SELECT emp_id,first_name,last_name FROM empl_1148 WHERE first_name IN(SELECT first_name


FROM empl_1148 WHERE emp_id IN(109,278)) AND last_name IN(SELECT last_name FROM
empl_1148 WHERE emp_id IN(278,115));
2) SELECT emp_id,first_name,last_name FROM empl_1148 WHERE first_name IN(SELECT first_name
FROM empl_1148 WHERE emp_id IN(109,278)) OR last_name IN(SELECT last_name FROM empl_1148
WHERE emp_id IN(278,115));

/*print duplicate*/

You might also like