Group By Contd...
Duration: 19 min
This video lesson is available to enrolled students.
Inside: a video lesson and guided study material.
Module outline
- English Communication: Communication Assessment, English Writing Ability, Comprehension / Reading Comprehension / Unseen Passages (Critical Reasoning) (Paragraph Questions)
- Artificial Intelligence (AI Literacy): AI & ML by Arun Sir
- Programming, Logic & Problem Solving (Technical Assessment): Language Design, Pseudo Codes
- DSA (Technical Assessment): Introduction to DS, Array, Stack, Queue, Linked List
- Software Engineering (Technical Assessment): Fundamentals of Software Engineering, Software Requirements and Quality Assurance, Software Design, Estimation and Metrics, Software Testing, Software Maintenance and Configuration Management
- OOPs (Technical Assessment): Object Oriented Programming (OOPS)
- DBMS (Technical Assessment): Basics of DBMS, ER Diagram, Relational Model & Functional Dependencies, Keys & Integrity Constraints, Normalization (1NF - BCNF), Decomposition Properties & 4NF, File Organization & Indexing, Relational Algebra, Relational Calculus, Transaction Management, Concurrency Control, Database Recovery, ORDBMS, Database Security & Authorization, Query Processing & Optimization, Enhanced Data Models, Data Warehousing & Mining, Big Data Systems, NoSQL
- SQL (Technical Assessment): SQL
- Networking (Technical Assessment): Introduction to CN, Data Communication, DLL: Access Control, DLL: Flow Control, DLL: Error Control, DLL: Framing, Data Link Layer - Ethernet, Net Layer: IPv4 & Proto, Net Layer: IP Addressing, Net Layer:Routing Protocol, Transport Layer Services, TL: Congestion & UDP, Application Layer, Hardware basics, Network Security, Mobile Technology
- Modern Engg Awareness (Technical Assessment): Emerging Tech Trends, Cyber and Info Security
- Debugging Assessment: Coding Questions by Yash Sir, C Programming by Yash Sir, Programming in C++, Java
- Cognitive Assessment: Gamified / Game Based Aptitude, Seating Arrangements, Puzzle Solving (Puzzles), Data Arrangement, Blood Relations, Directions (Direction Test), Coding Decoding, Series (Number and Letter Series) (Numerical Relations and Reasoning), Logical Sequence Of Words, Ranking, Order and Sequence, Data Sufficiency, Inequality, Venn Diagram, Syllogisms, Cubes & Dices, Calendar, Clock, Analytical Reasoning (Counting Figures Reasoning), Deductive and Inductive Reasoning (Logical Deduction and Induction) (Prepositional Reasoning), Non Verbal Reasoning (Spatial Aptitude) (Spatial Reasoning) (Visual Reasoning), Selection Decision Table (Decision Making), Behavioral Assessment (Behavioral Competency Profiling) (Psychometric Test)
- HR Interview: MR & HR Interview Preparation
AI summary & chapters
AI Summary
An AI-generated summary of this video lecture.
This lecture segment focuses on the rules and mechanics of SQL GROUP BY, HAVING, and aggregation. The instructor establishes that any attribute in the SELECT clause must either be aggregated or included in the GROUP BY clause to prevent errors. The HAVING clause is introduced as a mechanism for filtering groups after aggregation, distinct from the WHERE clause which filters individual tuples. The lesson concludes by defining the formal sequence of operations for SQL query evaluation involving these clauses.
Chapters
0:00 – 2:00 00:00-02:00
The instructor introduces the fundamental rules governing SQL GROUP BY and HAVING clauses. He emphasizes that non-aggregated attributes in a SELECT statement must be present in the GROUP BY clause to avoid errors. The text on screen states, 'When an SQL query uses grouping, it is important to ensure that the only attributes that appear in the select…' and 'In other words, any attribute that is not present in the group by clause must appear only inside an aggregate function…'. The instructor underlines key terms and uses hand gestures to stress the distinction between individual tuples and groups, setting the stage for understanding aggregation constraints.
2:00 – 5:00 02:00-05:00
The lecture transitions to the HAVING clause, explaining its purpose in filtering groups rather than individual tuples. The slide text reads, 'The Having Clause - At times it is useful to state a condition that applies to groups rather than to tuples.' The instructor clarifies that SQL applies predicates in the HAVING clause after groups have been formed. He notes, 'Any attribute that is present in the having clause without being aggregated must appear in the group by clause,' reinforcing the consistency required between GROUP BY and HAVING attributes. Visual cues include red underlining of key terms to highlight syntax requirements.
5:00 – 10:00 05:00-10:00
The instructor provides concrete SQL examples to illustrate valid and invalid queries. He writes 'select (dno) from emp group by dno' as a valid example and contrasts it with 'select eno, from emp group by dno;' which is invalid due to the missing GROUP BY attribute. The lesson emphasizes that attributes in SELECT must be either aggregated or grouped. He introduces the concept of filtering groups using HAVING, noting that 'SQL applies predicates in the having clause after groups have been formed.' The instructor uses checkmarks and crosses to visually indicate correct versus incorrect syntax, ensuring students understand the strict rules for non-aggregated attributes.
10:00 – 15:00 10:00-15:00
The focus shifts to the sequence of operations in SQL query evaluation. The instructor explains that the meaning of a query containing aggregation, GROUP BY, or HAVING is defined by a specific order. He writes out the steps on the slide: '1. As was the case for queries without aggregation, the from clause is first evaluated to get a relation.' He continues with '2. If a where clause is present, the predicate in the where clause is applied on the result relation of the from clause.' This section clarifies that WHERE filters before GROUP BY, establishing the logical flow of query processing.
15:00 – 18:37 15:00-18:37
The instructor completes the sequence of operations by detailing steps 3 through 5. He explains, '3. Tuples satisfying the where predicate are then placed into groups by the group by clause if it is present.' He further states, '4. The having clause, if it is present, is applied to each group; the groups that do not satisfy the having clause…' Finally, he concludes with '5. The select clause uses the remaining groups to generate tuples of the result of the query.' Using a sample query 'select empno dno, count(eno) from emp', he numbers each clause (1-5) to map them to their execution order, demonstrating how FROM starts the process and SELECT finishes it.
The lecture systematically builds understanding of SQL aggregation rules. It begins by defining the constraint that non-aggregated SELECT attributes must appear in GROUP BY, preventing common syntax errors. The HAVING clause is then distinguished from WHERE by its application to groups post-aggregation, requiring similar attribute constraints. The final section formalizes the query evaluation sequence: FROM -> WHERE -> GROUP BY -> HAVING -> SELECT. This logical order is critical for understanding how SQL processes complex queries, ensuring students grasp that filtering happens before grouping and aggregation results are filtered again by HAVING before the final projection.