Related Topics
Modifying and Analyzing Data with SQL Functions
Inserting and Updating Data:
1. INSERT Statement for Adding New Records:
- Syntax:
```sql
INSERT INTO employees (employee_id, employee_name, salary) VALUES (101, 'John Doe', 50000);
```
- Best Practices:
- Always specify column names when using the INSERT statement.
- Ensure data types match the table schema.
2. UPDATE Statement for Modifying Existing Data:
- Syntax:
```sql
UPDATE employees SET salary = 55000 WHERE employee_id = 101;
```
- Best Practices:
- Use the WHERE clause to update specific records.
- Double-check conditions to avoid unintended updates.
3. Deleting Data:
- Understanding the DELETE Statement:
- Syntax:
```sql
DELETE FROM employees WHERE employee_id = 101;
```
- Considerations:
- Always use the WHERE clause to avoid unintentional data loss.
- Be cautious when deleting from tables with relationships.
Aggregate Functions Revisited:
4. In-Depth Exploration of Aggregate Functions:
- Common Aggregate Functions:
- COUNT, SUM, AVG, MIN, MAX.
- Syntax:
```sql
SELECT AVG(salary) AS average_salary FROM employees;
```
- Practical Applications:
- Analyzing sales data, calculating average order value.
5. HAVING Clause for Filtering Results of Aggregate Functions:
- Syntax:
```sql
SELECT department_id, AVG(salary) AS avg_salary
FROM employees
GROUP BY department_id
HAVING AVG(salary) > 60000;
```
- Use Cases:
- Filtering departments with average salaries above a certain threshold.
Window Functions:
6. Introduction to Window Functions:
- Common Window Functions:
- ROW_NUMBER(), RANK(), DENSE_RANK().
- Syntax:
```sql
SELECT employee_name, salary, ROW_NUMBER() OVER (ORDER BY salary DESC) AS rank
FROM employees;
```
- Analytical Functions for Running Totals and Averages:
```sql
SELECT date, revenue, SUM(revenue) OVER (ORDER BY date) AS running_total
FROM sales_data;
```
Common Table Expressions (CTEs):
7. Definition and Purpose of CTEs:
- Definition:
- A CTE is a named temporary result set that you can reference within a SELECT, INSERT, UPDATE, or DELETE statement.
- Syntax:
```sql
WITH high_salary_employees AS (
SELECT employee_name, salary
FROM employees
WHERE salary > 60000
)
SELECT * FROM high_salary_employees;
```
- Benefits:
- Enhances readability and maintainability of complex queries.
8. Examples Illustrating the Benefits of CTEs:
- Scenario:
- Analyzing quarterly sales trends using a CTE.
```sql
WITH quarterly_sales AS (
SELECT quarter, SUM(revenue) AS total_revenue
FROM sales_data
GROUP BY quarter
)
SELECT * FROM quarterly_sales;
```
Key Takeaways:
- Advanced Data Modification Skills: Participants will master the art of modifying data using INSERT, UPDATE, and DELETE statements.
- Enhanced Data Analysis: Proficiency in using aggregate functions, HAVING clauses, window functions, and CTEs for insightful data analysis.
- Data Integrity and Best Practices: Understanding the importance of maintaining data integrity during modification and following best practices to avoid pitfalls.
Congratulations on completing Lesson 4! In our next module, we'll explore the world of operators in SQL, providing you with the tools to fine-tune your queries and unlock new possibilities in data manipulation. Keep practicing, and happy querying!