SQL Topics to prepare for interviews,
SQL Basics:
- Introduction to SQL
- SQL Data Types
- DDL (Data Definition Language): CREATE, ALTER, DROP
- DML (Data Manipulation Language): SELECT, INSERT, UPDATE, DELETE
- DCL (Data Control Language): GRANT, REVOKE
- TCL (Transaction Control Language): COMMIT, ROLLBACK, SAVEPOINT
SQL Queries:
- SELECT statements
- WHERE clause and filtering data
- ORDER BY clause
- DISTINCT keyword
- LIMIT/OFFSET
Joins:
- INNER JOIN
- LEFT JOIN (LEFT OUTER JOIN)
- RIGHT JOIN (RIGHT OUTER JOIN)
- FULL JOIN (FULL OUTER JOIN)
- SELF JOIN
- CROSS JOIN
Advanced SQL Clauses and Functions:
- GROUP BY and HAVING clauses
- Aggregate Functions (COUNT, SUM, AVG, MIN, MAX)
- Subqueries and Nested Queries
- CASE statements
- COALESCE function
- String functions (CONCAT, LENGTH, SUBSTRING)
- Date and time functions (NOW, DATEADD, DATEDIFF)
Data Integrity and Constraints:
- Primary Key
- Foreign Key
- Unique
- Not Null
- Check
- Default
Views and Indexes:
- Creating and using Views
- Creating and managing Indexes
- Advantages and disadvantages of Views and Indexes
Database Normalization:
- Normalization concepts (1NF, 2NF, 3NF, BCNF)
- Denormalization
Stored Procedures and Triggers:
- Creating and executing stored procedures
- Advantages of stored procedures
- Creating and using triggers
- Trigger types (BEFORE, AFTER)
Transactions and Concurrency Control:
- ACID properties
- Isolation levels
- Deadlocks
- Optimistic vs. Pessimistic Locking
Performance Tuning:
- Query optimization
- Index optimization
- Database partitioning
- Execution plans
Advanced SQL Concepts:
- Common Table Expressions (CTE)
- Window functions (ROW_NUMBER, RANK, DENSE_RANK)
- Recursive queries
- JSON and XML handling in SQL
NoSQL Integration:
- Differences between SQL and NoSQL
- Using SQL with NoSQL databases