Find top SQL resources from global universities, cool projects, and learning materials for data analytics.
Admin: @coderfun
Useful links: heylink.me/DataAnalytics
Promotions: @love_data
Post #2529
2.31K
- โค 2
SQ @sqlanalyst
Showing posts older than #2531 ยท Back to latest
SELECT COUNT(*) FROM employees;
SELECT dept_id, SUM(salary)
FROM employees
GROUP BY dept_id;
SELECT AVG(salary) FROM employees;
SELECT MAX(salary), MIN(salary) FROM employees;
SELECT dept_id, COUNT(*)
FROM employees
GROUP BY dept_id;
SELECT dept_id, AVG(salary)
FROM employees
GROUP BY dept_id
HAVING AVG(salary) > 50000;
SELECT dept_id, COUNT(*)
FROM employees
GROUP BY dept_id
HAVING COUNT(*) > 5;
GROUP BY dept_id, job_title
SELECT dept_id, SUM(salary), AVG(salary)
FROM employees
GROUP BY dept_id;
Aspect: Query
Static SQL: Fixed query
Dynamic SQL: Built at runtime
Aspect: Performance
Static SQL: Faster
Dynamic SQL: More flexible
Aspect: Complexity
Static SQL: Less complex
Dynamic SQL: More complex
Aspect: Risk
Static SQL: Lower risk
Dynamic SQL: Higher risk if not parameterized
WITH RECURSIVE Numbers AS (
SELECT 1 AS num
UNION ALL
SELECT num + 1
FROM Numbers
WHERE num < 5
)
SELECT * FROM Numbers;
WITH RECURSIVE EmployeeHierarchy AS (
SELECT
emp_id,
name,
manager_id,
1 AS level
FROM employees
WHERE manager_id IS NULL
UNION ALL
SELECT
e.emp_id,
e.name,
e.manager_id,
eh.level + 1
FROM employees e
JOIN EmployeeHierarchy eh
ON e.manager_id = eh.emp_id
)
SELECT * FROM EmployeeHierarchy;
DELIMITER //
CREATE FUNCTION CalculateBonus(
salary DECIMAL(10,2)
)
RETURNS DECIMAL(10,2)
DETERMINISTIC
BEGIN
RETURN salary ** 0.10;
END //
DELIMITER ;
SELECT CalculateBonus(50000);
SELECT
name,
salary,
CalculateBonus(salary) AS bonus
FROM employees;
DELIMITER //
CREATE FUNCTION TotalIncome(
salary DECIMAL(10,2),
bonus DECIMAL(10,2)
)
RETURNS DECIMAL(10,2)
DETERMINISTIC
BEGIN
RETURN salary + bonus;
END //
DELIMITER ;
SELECT TotalIncome(50000, 5000);
