SELECT e.*
FROM employees e
WHERE (department, salary) IN (
SELECT department, MAX(salary)
FROM employees
GROUP BY department
);
SELECT
name,
salary,
RANK() OVER (ORDER BY salary DESC) AS rank
FROM employees;
SELECT
name,
salary,
SUM(salary) OVER (ORDER BY hire_date) AS cumulative_sum
FROM employees;
SELECT
NOW(), -- ํ์ฌ ๋ ์ง์๊ฐ
CURDATE(), -- ํ์ฌ ๋ ์ง
DATE_ADD(NOW(), INTERVAL 7 DAY), -- 7์ผ ํ
DATEDIFF(NOW(), hire_date) -- ๋ ์ง ์ฐจ์ด
FROM employees;
SELECT
CONCAT(first_name, ' ', last_name), -- ๋ฌธ์์ด ๊ฒฐํฉ
SUBSTRING(phone, 1, 3), -- ๋ถ๋ถ ๋ฌธ์์ด
LENGTH(name), -- ๊ธธ์ด
UPPER(email), -- ๋๋ฌธ์
REPLACE(phone, '-', '') -- ์นํ
FROM employees;
goal: ๊ฐ ๊ฐ๋ ์ ๋ฐ๋์ ์ง์ SQL๋ก ์คํํด๋ณด๊ธฐ