The document discusses different types of subqueries, including single-row subqueries that return a single value and multi-row subqueries that return multiple values. It provides examples of queries using >, <, IN, ALL, and ANY operators with multi-row subqueries to return rows where the column value is greater than, less than, included in, greater than all, less than all, greater than any, or less than any of the values in the subquery result.
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 ratings0% found this document useful (0 votes)
107 views
Single Row Subquery
The document discusses different types of subqueries, including single-row subqueries that return a single value and multi-row subqueries that return multiple values. It provides examples of queries using >, <, IN, ALL, and ANY operators with multi-row subqueries to return rows where the column value is greater than, less than, included in, greater than all, less than all, greater than any, or less than any of the values in the subquery result.
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/ 4
Single row subquery: Subquery will return a
single value
Select * from emp where salary > (select
max(salary) from emp where did=10);
Multirow sub query
Select * from emp where salary>(select
avg(salary) from emp group by did); Eid Ename did salary jid 100 a 10 10000 j1 101 b 10 12000 j1 102 c 20 2000 j2 103 d 20 8000 j3 104 e 10 14000 j4 105 f 30 5000 j3
did avg(salary) 10 12000 20 5000 30 5000 Select * from emp where salary in (select avg(salary) from emp group by did); 105 f 30 5000 j3
Select * from emp where salary > all (select
avg(salary) from emp group by did); 104 e 10 14000 j4
Select * from emp where salary <all (select
avg(salary) from emp group by did); 102 c 20 2000 j2 Select * from emp where salary <any (select avg(salary) from emp group by did); Eid Ename did salary jid 100 a 10 10000 j1 102 c 20 2000 j2 103 d 20 8000 j3 105 f 30 5000 j3
Select * from emp where salary >any (select
avg(salary) from emp group by did); Eid Ename did salary jid 100 a 10 10000 j1 101 b 10 12000 j1 103 d 20 8000 j3 104 e 10 14000 j4
In the above query, subquery is returning
more than one value.These type of subquery is called as multirow subquery. We have to use multirow subquery operators. IN(multiple values can be compared at a time) ANY ALL >all--àgreater than the maximum <all---àless than the minimum >anyàgreater than the minimum <anyàless than the maximum