0% found this document useful (0 votes)
35 views4 pages

Advanced SQL Queries Class12

This document provides a comprehensive guide to advanced SQL queries, including various types of joins, subqueries, set operations, and complex conditions. It includes example tables and SQL statements for practical understanding and exam preparation. Students are encouraged to practice these queries thoroughly to enhance their skills.

Uploaded by

pratham2211ps
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)
35 views4 pages

Advanced SQL Queries Class12

This document provides a comprehensive guide to advanced SQL queries, including various types of joins, subqueries, set operations, and complex conditions. It includes example tables and SQL statements for practical understanding and exam preparation. Students are encouraged to practice these queries thoroughly to enhance their skills.

Uploaded by

pratham2211ps
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/ 4

Advanced SQL Queries – Class 12

Informatics Practices
This document provides advanced SQL queries covering joins, subqueries, set operations,
nested queries, and complex conditions. Practice these thoroughly to excel in exams.

Example Tables

Table: Students

+----+-------+----------+-------+-----------+
| ID | Name | Department | Marks | City |
+----+-------+----------+-------+-----------+
| 1 | Asha | CS | 85 | Mumbai |
| 2 | Rahul | IT | 75 | Pune |
| 3 | Meena | CS | 65 | Nashik |
| 4 | John | EC | 55 | Mumbai |
| 5 | Priya | IT | 45 | Pune |
+----+-------+----------+-------+-----------+

Table: Subjects

+----+-----------+-----------+
| ID | Student_ID | Subject |
+----+-----------+-----------+
|1 |1 | Math |
|2 |1 | Physics |
|3 |2 | Math |
|4 |3 | Chemistry |
|5 |4 | Physics |
|6 |5 | Chemistry |
+----+-----------+-----------+

Table: Scores

+----+-----------+-------+
| ID | Student_ID | Score |
+----+-----------+-------+
|1 |1 | 90 |
|2 |2 | 70 |
|3 |3 | 60 |
|4 |4 | 50 |
|5 |5 | 40 |
+----+-----------+-------+

Advanced SQL Queries

1. INNER JOIN with Multiple Tables


SELECT S.Name, S.Department, Sub.Subject, Sc.Score
FROM Students S
JOIN Subjects Sub ON S.ID = Sub.Student_ID
JOIN Scores Sc ON S.ID = Sc.Student_ID
WHERE S.Marks > 60;

2. LEFT JOIN Example


SELECT S.Name, Sub.Subject
FROM Students S
LEFT JOIN Subjects Sub ON S.ID = Sub.Student_ID
ORDER BY S.Name;

3. RIGHT JOIN Example


SELECT S.Name, Sc.Score
FROM Students S
RIGHT JOIN Scores Sc ON S.ID = Sc.Student_ID
WHERE Sc.Score > 50;

4. FULL OUTER JOIN Simulation


SELECT S.Name, Sc.Score
FROM Students S
LEFT JOIN Scores Sc ON S.ID = Sc.Student_ID
UNION
SELECT S.Name, Sc.Score
FROM Students S
RIGHT JOIN Scores Sc ON S.ID = Sc.Student_ID;

5. Subquery with EXISTS


SELECT S.Name
FROM Students S
WHERE EXISTS (SELECT * FROM Scores Sc WHERE S.ID = Sc.Student_ID AND Sc.Score > 80);
6. Correlated Subquery
SELECT S.Name, S.Marks
FROM Students S
WHERE S.Marks > (SELECT AVG(Sc.Score) FROM Scores Sc WHERE Sc.Student_ID = S.ID);

7. Nested Queries
SELECT Name
FROM Students
WHERE ID IN (SELECT Student_ID FROM Scores WHERE Score = (SELECT MAX(Score)
FROM Scores));

8. GROUP BY with HAVING


SELECT S.Department, COUNT(S.ID) AS TotalStudents
FROM Students S
GROUP BY S.Department
HAVING COUNT(S.ID) > 1;

9. Set Operations – UNION


SELECT Name FROM Students WHERE City = 'Mumbai'
UNION
SELECT Name FROM Students WHERE City = 'Pune';

10. Set Operations – INTERSECT Simulation


SELECT Name FROM Students WHERE ID IN
(SELECT Student_ID FROM Subjects WHERE Subject = 'Math')
AND ID IN
(SELECT Student_ID FROM Scores WHERE Score > 60);

11. CASE Statement for Grading


SELECT Name, Marks,
CASE
WHEN Marks >= 80 THEN 'A'
WHEN Marks >= 60 THEN 'B'
WHEN Marks >= 40 THEN 'C'
ELSE 'F'
END AS Grade
FROM Students;

12. Complex WHERE Clause


SELECT * FROM Students
WHERE (Department = 'CS' AND Marks > 70)
OR (City = 'Pune' AND Marks < 50);
13. Update with Subquery
UPDATE Students
SET Marks = Marks + 5
WHERE ID IN (SELECT Student_ID FROM Scores WHERE Score < 60);

14. Delete with Subquery


DELETE FROM Students
WHERE ID IN (SELECT Student_ID FROM Scores WHERE Score < 50);

15. Aggregate with JOIN


SELECT S.Department, AVG(Sc.Score) AS AvgScore
FROM Students S
JOIN Scores Sc ON S.ID = Sc.Student_ID
GROUP BY S.Department;

You might also like