SQL query
Duration: 8 min
This video lesson is available to enrolled students.
Inside: a video lesson and guided study material.
Module outline
- Quantitative Aptitude: Number System, Divisibility Rules, HCF LCM, Percentage, Ratio and Proportion (Ratios), Average, Profit and Loss, Simple Interest and Compound Interest, Mixture and Alligation, Partnership, Age Problems, Time and Work, Pipe and Cistern, Speed Time and Distance, Algebra, Arithmetic, Data Interpretation, Sequence and Series (Series), Logarithm, Powers and Exponents (Surds and Indices), Permutation and Combination, Probability, Speed Mathematics and Basic Mathematics, Trigonometry
- Logical Reasoning: Coding Decoding, Blood Relations, Directions (Direction Test), Ranking, Order and Sequence, Seating Arrangements, Puzzle Solving (Puzzles), Data Arrangement, Syllogisms, Inequality, Data Sufficiency, Deductive and Inductive Reasoning (Logical Deduction and Induction) (Prepositional Reasoning), Series (Number and Letter Series) (Numerical Relations and Reasoning), Venn Diagram, Logical Sequence Of Words, Calendar, Clock, Cubes & Dices, Non Verbal Reasoning (Spatial Aptitude) (Spatial Reasoning) (Visual Reasoning)
- Verbal Ability: Noun, Pronoun, Adjectives, Verb, Adverb, Tenses, Subject Verb Agreement (Verb Noun Agreement), Articles, Preposition, Conjunction, Modals, Determiner, Vocabulary, Comprehension / Reading Comprehension / Unseen Passages (Critical Reasoning) (Paragraph Questions), Cloze Test (Cloze Passage), Sentence Correction (Error Correction), Sentence Completion (Fill in the blanks), Sentence Re-arrangements (Para Jumbles) (Narrative Sequencing), Active Passive Voice (Voice), Direct and Indirect Speech, Sentence Construction
- Data Structures (Domain Test): Introduction to DS, Array, Stack, Queue, Linked List, Tree, Graphs, Hashing
- Algorithms (Domain Test): Algorithm Analysis, Sorting Algorithms, Time Complexity Analysis, Greedy Algorithms
- OOPs (Domain Test): Object Oriented Programming (OOPS)
- DBMS (Domain Test): 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 (Domain Test): SQL
- Operating Systems (Domain Test): Introduction to OS, Process Management, CPU Scheduling, Process Synchronization, Deadlock, Threads & Process Creation, Memory Management, Virtual Memory, Disc Scheduling, File Management, Windows OS, Linux OS, Security, Distributed Systems, Virtual Machines
- Computer Networks (Domain Test): 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, Cloud Computing and IoT, Cyber and Info Security
- Coding: Coding Questions by Yash Sir, C Programming by Yash Sir, Programming in C++, Java, Python for Placements by Yash Sir
- Written English Test: English Writing Ability
- Psychometric Test: Behavioral Assessment (Behavioral Competency Profiling) (Psychometric Test)
AI summary & chapters
AI Summary
An AI-generated summary of this video lecture.
The video lecture focuses on constructing a complex SQL query based on a provided database schema. The specific task is to retrieve branch names located in Gwalior where the average account balance exceeds 1500. The instructor begins by dissecting the question to identify necessary tables (branch and account) and attributes (branch-name, branch-city, balance). He then proceeds to write the SQL code on a digital whiteboard, initially using implicit join syntax (comma-separated tables in the FROM clause) and later refining it to use explicit JOIN syntax. Key concepts covered include filtering rows with the WHERE clause, grouping data with GROUP BY, and filtering aggregated results with the HAVING clause. The instructor emphasizes the logical order of SQL execution and the distinction between filtering individual records versus filtering groups. The schema also shows depositor, customer, loan, and borrower tables, but the instructor correctly identifies that only branch and account are needed for this specific query.
Chapters
0:00 – 2:00 00:00-02:00
The instructor reads the problem statement: 'Write a SQL query to find the branch name of Gwalior city with average balance more than 1500?' He analyzes the Entity-Relationship diagram, specifically pointing to the branch table to identify branch-name and branch-city as the source for location data. He then identifies the account table as the source for the balance attribute. He notes the relationship between these tables is established through the branch-name attribute, which acts as a foreign key in the account table referencing the branch table. He visually traces the line connecting branch and account to confirm the join path.
2:00 – 5:00 02:00-05:00
The instructor starts writing the SQL query structure. He writes SELECT b.branch-name to specify the output column. In the FROM clause, he lists branch b, account a to introduce both tables with aliases. He adds a WHERE clause to join them: b.branch-name = a.branch-name. He then introduces GROUP BY b.branch-name because the query requires an aggregate calculation (AVG). He writes HAVING AVG(a.balance) > 1500 to filter the groups. He realizes he missed the city condition and adds AND b.branch-city = 'Gwalior' to the WHERE clause, explaining that this filters the rows before grouping occurs. He underlines the branch-name in the account table to emphasize the join key.
5:00 – 8:22 05:00-08:22
The instructor rewrites the query using explicit JOIN syntax for better readability. He writes FROM branch b JOIN account a ON b.branch-name = a.branch-name. He moves the city condition WHERE b.branch-city = 'Gwalior' to the WHERE clause. He retains GROUP BY b.branch-name and HAVING AVG(a.balance) > 1500. He explains that the WHERE clause filters individual rows (e.g., removing accounts not in Gwalior) before the grouping happens. The GROUP BY clause then organizes the remaining accounts by branch. Finally, the HAVING clause filters these groups, keeping only branches where the calculated average balance is greater than 1500. The text 'KNOWLEDGE GATE' is visible in the background watermark.
The lesson effectively demonstrates the step-by-step construction of a SQL query involving multiple tables and aggregate functions. It highlights the importance of understanding the database schema to identify correct join paths. The progression from implicit joins to explicit joins shows a move towards best practices in SQL writing. The distinction between WHERE and HAVING is a critical takeaway, as WHERE filters raw data while HAVING filters aggregated data, a common point of confusion for students. The final query structure SELECT ... FROM ... JOIN ... WHERE ... GROUP BY ... HAVING ... represents a standard pattern for reporting queries. The instructor's methodical approach ensures students understand not just the syntax, but the logical flow of data processing in SQL.