Group By Contd...
Duration: 19 min
This video lesson is available to enrolled students.
Inside: a video lesson and guided study material.
Module outline
- About Course: About the Course
- General Aptitude & Reasoning: Number System, Percentage, Ratio and Proportion (Ratios), Average, Profit and Loss, Simple Interest and Compound Interest, Time and Work, Speed Time and Distance, Mixture and Alligation, Data Interpretation, Algebra, Probability, Permutation and Combination, Venn Diagram, HCF LCM, Divisibility Rules, Age Problems, Pipe and Cistern, Partnership, Linear Algebra, Sequence and Series (Series), Statistics, Powers and Exponents (Surds and Indices), Arithmetic, Mensuration and Geometry, Calculus, Trigonometry, Vectors, Speed Mathematics and Basic Mathematics, Non Verbal Reasoning (Spatial Aptitude) (Spatial Reasoning) (Visual Reasoning), Analogy, Series (Number and Letter Series) (Numerical Relations and Reasoning), Puzzle Solving (Puzzles), Syllogisms, Deductive and Inductive Reasoning (Logical Deduction and Induction) (Prepositional Reasoning), Calendar, Seating Arrangements, Coding Decoding, Blood Relations, Directions (Direction Test), Clock, Analytical Reasoning (Counting Figures Reasoning), Ranking, Order and Sequence, Logical Sequence Of Words, Inequality, Data Sufficiency, Cubes & Dices
- Computer Networks & Cybersecurity: 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
- Programming, Data Structures & Algorithms: C Fundamentals, Control Flow, Functions, Arrays & Pointers, Storage Classes, Structures & Enums, DMA, Macros, Scoping & File Handling, OOPS with C++, Introduction to DS, Array, Stack, Queue, Linked List, Tree, Graphs, Hashing, Algorithm Analysis, Time Complexity Analysis, Sorting Algorithms, Greedy Algorithms, Dynamic Programming, Minimum Spanning Trees, Shortest Path Algos, Advanced Algorithms
- AI, Machine Learning, Big Data & Cloud: Emerging Tech Trends, Artificial Intelligence, Big Data Systems, Approaches to AI, Search Algorithms, Knowledge Representation, Cloud Computing
- Digital Logic & Computer Organization: Digital Systems & Boolean Basics, Logic Gates & Hardware, Boolean Expression, Boolean Minimization, Combinational Circuit, Sequential Circuits, Number System, Number Representation, Basics of COA, Floating Point Rep, Cache Memory Organization, Input Output Organisation, Pipelining, Instr Formats & Modes, Register Transfer and Microoperations, Control Unit Design, Programming the Basic Computer
- TOC & Compiler: Introduction to TOC, Deterministic FA (DFA), Non-Deterministic FA, Regular Expressions, Grammar, Regular Language Properties, Moore & Mealy Machines, Pushdown Automata & CFG, Turing Machines, Complexity Theory, Intro to Compilers, Lexical Analysis, Grammar & CFG, Syntax Analysis: Top-Down, Syntax Analysis: Bottom-Up, Semantic Analysis & SDT, Intermediate Code Gen, Code Optimization, Run Time Environment
- Discrete Mathematics: Set Theory, Relations, Functions, Graph Theory, Group Theory, Propositional and Predicate Logic
- Operating System: Introduction to OS, Process Management, CPU Scheduling, Process Synchronization, Threads & Process Creation, Deadlock, Memory Management, Virtual Memory, Disc Scheduling, File Management, Unix OS, Linux OS, Distributed Systems
- Software Engineering: Fundamentals of Software Engineering, Software Requirements and Quality Assurance, Software Design, Estimation and Metrics, Software Testing, Software Maintenance and Configuration Management, Object Oriented Technology, HTML Basics, JavaScript-Basics, Java, XML
- Database Management System: Basics of DBMS, ER Diagram, Relational Model & Functional Dependencies, Keys & Integrity Constraints, Normalization (1NF - BCNF), Decomposition Properties & 4NF, File Organization & Indexing, Relational Algebra, SQL, Relational Calculus, Transaction Management, Concurrency Control, Database Recovery, Data Warehousing & Mining, Enhanced Data Models, NoSQL
- Other Recurring CS Topics: Basics of Computer Graphics, 2-D Geometrical Transforms and Viewing, Multimedia
- Live Classes: ISRO Live classes
- Full Mock Test:
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.