เชนเซเชฒเซ เชนเซเชฌเซเชฐ!
3 เชตเชฐเซเชทเชฅเซ เชตเชงเซ เชธเชฎเชฏเชฅเซ เชนเซเช เชตเชฟเชตเชฟเชง เชคเชพเชฒเซเชฎ เชเซเชจเซเชฆเซเชฐเซเชฎเชพเช SQL เชถเซเชเชตเซ เชฐเชนเซเชฏเซ เชเซเช, เช เชจเซ เชฎเชพเชฐเซเช เชเช เช เชตเชฒเซเชเชจ เช เชเซ เชเซ เชเซ เชตเชฟเชฆเซเชฏเชพเชฐเซเชฅเซเชเชจเซ เชเซเช เชเชพเชฐเซเชฏ เชธเซเชเชชเชตเชพเชฎเชพเช เชเชตเซ เชคเซ เชตเชฟเชฆเซเชฏเชพเชฐเซเชฅเซเช SQL เชจเซ เชตเชงเซ เชธเชพเชฐเซ เชฐเซเชคเซ เชถเซเชเซ เชเซ เช เชจเซ เชธเชฎเชเซ เชเซ, เช เชจเซ เชฎเชพเชคเซเชฐ เชถเชเซเชฏเชคเชพเช เช เชจเซ เชธเซเชฆเซเชงเชพเชเชคเชฟเช เชชเชพเชฏเชพ เชตเชฟเชถเซ เชตเชพเชค เชเชฐเชคเชพ เชจเชฅเซ.
เช เชฒเซเชเชฎเชพเช, เชนเซเช เชคเชฎเชพเชฐเซ เชธเชพเชฅเซ เชฎเชพเชฐเชพ เชเชพเชฐเซเชฏเซเชจเซ เชธเซเชเชฟ เชถเซเชฐ เชเชฐเซเชถ เชเซ เชนเซเช เชตเชฟเชฆเซเชฏเชพเชฐเซเชฅเซเชเชจเซ เชนเซเชฎเชตเชฐเซเช เชคเชฐเซเชเซ เชเชชเซเช เชเซเช เช เชจเซ เชเซเชจเชพ เชชเชฐ เช เชฎเซ เชตเชฟเชตเชฟเชง เชชเซเชฐเชเชพเชฐเชจเชพ เชตเชฟเชเชพเชฐ-เชตเชฟเชฎเชฐเซเชถ เชเชฐเซเช เชเซเช, เชเซ SQL เชจเซ เชเชเชกเซ เช เชจเซ เชธเซเชชเชทเซเช เชธเชฎเชเชฃ เชคเชฐเชซ เชฆเซเชฐเซ เชเชพเชฏ เชเซ.
SQL (หษsหkjuหษl; eng. เชธเซเชเซเชฐเชเซเชเชฐเซเชก เชเซเชตเซเชฐเซ เชฒเซเชเชเซเชตเซเช) เช เชฏเซเชเซเชฏ เชกเซเชเชพเชฌเซเช เชฎเซเชจเซเชเชฎเซเชจเซเช เชธเชฟเชธเซเชเชฎ เชฆเซเชตเชพเชฐเชพ เชธเชเชเชพเชฒเชฟเชค เชฐเชฟเชฒเซเชถเชจเชฒ เชกเซเชเชพเชฌเซเชเชฎเชพเช เชกเซเชเชพ เชฌเชจเชพเชตเชตเชพ, เชธเชเชถเซเชงเชฟเชค เชเชฐเชตเชพ เช
เชจเซ เชฎเซเชจเซเช เชเชฐเชตเชพ เชฎเชพเชเซ เชตเชชเชฐเชพเชคเซ เชเซเชทเชฃเชพเชคเซเชฎเช เชชเซเชฐเซเชเซเชฐเชพเชฎเชฟเชเช เชญเชพเชทเชพ เชเซ.
เชคเชฎเซ เชเชธเชเซเชฏเซเชเชฒ เชตเชฟเชถเซ เช
เชฒเชเชฅเซ เชตเชพเชเชเซ เชถเชเซ เชเซ
เช เชฒเซเชเชจเซ เชนเซเชคเซ เชคเชฎเชจเซ เชถเชฐเซเชเชคเชฅเซ SQL เชถเซเชเชตเชตเชพเชจเซ เชจเชฅเซ.
เชคเซ เชเชพเชฒเซ เชเชพเชฒเซ.
เช
เชฎเซ เชเชพเชฃเซเชคเชพ เชเชชเชฏเซเช เชเชฐเซเชถเซเช
เชนเซเช เชจเซเชเชงเซเช เชเซเช เชเซ เช
เชฎเซ เชซเชเซเชค SELECT เชชเชฐเชจเชพ เชเชพเชฐเซเชฏเซเชจเซ เช เชงเซเชฏเชพเชจเชฎเชพเช เชฒเชเชถเซเช. DML เช
เชจเซ DDL เชชเชฐ เชเซเช เชเชพเชฐเซเชฏเซ เชจเชฅเซ.
เชเชพเชฐเซเชฏเซ
เชกเซเชเชพเชจเซ เชชเซเชฐเชคเชฟเชฌเชเชงเชฟเชค เช เชจเซ เชตเชฐเซเชเซเชเชฐเชฃ
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชฌเชงเชพ เชเชฐเซเชฎเชเชพเชฐเซเช เชตเชฟเชถเซ เชฎเชพเชนเชฟเชคเซ เชธเชพเชฅเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT * FROM employees
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. 'เชกเซเชตเชฟเชก' เชจเชพเชฎเชจเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE first_name = 'David';
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. 'IT_PROG' เชธเชฎเชพเชจ job_id เชงเชฐเชพเชตเชคเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE job_id = 'IT_PROG'
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. 50 เชฅเซ เชตเชงเซ เชชเชเชพเชฐ (เชชเชเชพเชฐ) เชงเชฐเชพเชตเชคเชพ 4000เชฎเชพ เชตเชฟเชญเชพเช (เชตเชฟเชญเชพเช_เชเชเชกเซ) เชจเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชธเซเชเชฟ เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE department_id = 50 AND salary > 4000;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. 20เชฎเซ เช
เชจเซ 30เชฎเซ เชตเชฟเชญเชพเชเชจเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ (เชตเชฟเชญเชพเช_เชเชเชกเซ)
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE department_id = 20 OR department_id = 30;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชจเชพเชฎเชจเซ เชเซเชฒเซเชฒเซ เช
เชเซเชทเชฐ 'a' เชเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE first_name LIKE '%a';
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. 50เชฎเชพ เช
เชจเซ 80เชฎเชพ เชตเชฟเชญเชพเช (เชกเชฟเชชเชพเชฐเซเชเชฎเซเชจเซเช_เชเชเชกเซ) เชจเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเซ เชชเชพเชธเซ เชฌเซเชจเชธ เชเซ (เชเชฎเชฟเชถเชจ_เชชเซเชธเซเชเซ เชเซเชฒเชฎเชฎเชพเช เชฎเซเชฒเซเชฏ เชเชพเชฒเซ เชจเชฅเซ)
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE (department_id = 50 OR department_id = 80)
AND commission_pct IS NOT NULL;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซเชฎเชจเชพ เชจเชพเชฎเชฎเชพเช เชเชเชพเชฎเชพเช เชเชเชพ 2 เช
เชเซเชทเชฐ 'n' เชนเซเชฏ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE first_name LIKE '%n%n%';
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชจเชพเชฎ 4 เช
เชเซเชทเชฐเซ เชเชฐเชคเชพ เชฒเชพเชเชฌเซ เชเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE first_name LIKE '%_____%';
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเซ เชชเชเชพเชฐ 8000 เชฅเซ 9000 เชจเซ เชตเชเซเชเซ เชเซ (เชธเชฎเชพเชนเชฟเชค)
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE salary BETWEEN 8000 AND 9000;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชจเชพเชฎเชฎเชพเช '%' เชเชฟเชนเซเชจ เชเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE first_name LIKE '%%%' ESCAPE '';
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชคเชฎเชพเชฎ เชฎเซเชจเซเชเชฐ ID เชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT DISTINCT manager_id
FROM employees
WHERE manager_id IS NOT NULL;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชซเซเชฐเซเชฎเซเชเชฎเชพเช เชคเซเชฎเชจเซ เชธเซเชฅเชฟเชคเชฟ เชงเชฐเชพเชตเชคเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ: เชกเซเชจเชพเชฒเซเชก(sh_clerk)
เชจเชฟเชฐเซเชฃเชฏ
SELECT first_name || '(' || LOWER (job_id) || ')' employee FROM employees;
เชเชเชเชชเซเชเชจเซ เชเชธเซเชเชฎเชพเชเช เชเชฐเชตเชพ เชฎเชพเชเซ เชธเชฟเชเชเชฒ-เชฐเซ เชซเชเชเซเชถเชจเชจเซ เชเชชเชฏเซเช เชเชฐเชตเซ
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชจเชพเชฎ 10 เช
เชเซเชทเชฐเซ เชเชฐเชคเชพ เชฒเชพเชเชฌเซ เชเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE LENGTH (first_name) > 10;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชจเชพเชฎเชฎเชพเช 'b' เช
เชเซเชทเชฐ เชเซ (เชเซเชธ เช
เชธเชเชตเซเชฆเชจเชถเซเชฒ)
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE INSTR (LOWER (first_name), 'b') > 0;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชจเชพเชฎเชฎเชพเช เชเชเชพเชฎเชพเช เชเชเชพ 2 เช
เชเซเชทเชฐ 'a' เชนเซเชฏ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE INSTR (LOWER (first_name),'a',1,2) > 0;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซเชฎเชจเซ เชชเชเชพเชฐ 1000 เชจเชพ เชเซเชฃเชพเชเชเชฎเชพเช เชเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE MOD (salary, 1000) = 0;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชฐเซเชฎเชเชพเชฐเซเชจเชพ เชซเซเชจ เชจเชเชฌเชฐเชจเซ เชชเซเชฐเชฅเชฎ 3-เช
เชเชเชจเซ เชจเชเชฌเชฐ เชฎเซเชณเชตเซ เชเซ เชคเซเชจเซ เชจเชเชฌเชฐ ะฅะฅะฅ.ะฅะฅะฅ.ะฅะฅะฅะฅ เชซเซเชฐเซเชฎเซเชเชฎเชพเช เชนเซเชฏ
เชจเชฟเชฐเซเชฃเชฏ
SELECT phone_number, SUBSTR (phone_number, 1, 3) new_phone_number
FROM employees
WHERE phone_number LIKE '___.___.____';
เชตเชฟเชญเชพเชเซเชจเซเช เชเซเชฌเชฒ. เชจเชพเชฎเชฎเชพเช เชเช เชเชฐเชคเชพเช เชตเชงเซ เชถเชฌเซเชฆเซ เชงเชฐเชพเชตเชคเชพ เชฒเซเชเซ เชฎเชพเชเซ เชตเชฟเชญเชพเชเชจเชพ เชจเชพเชฎเชฎเชพเชเชฅเซ เชชเซเชฐเชฅเชฎ เชถเชฌเซเชฆ เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT department_name,
SUBSTR (department_name, 1, INSTR (department_name, ' ')-1)
first_word
FROM departments
WHERE INSTR (department_name, ' ') > 0;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชจเชพเชฎเชจเชพ เชชเซเชฐเชฅเชฎ เช
เชจเซ เชเซเชฒเซเชฒเชพ เช
เชเซเชทเชฐ เชตเชเชฐ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเชพ เชจเชพเชฎ เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT first_name, SUBSTR (first_name, 2, LENGTH (first_name) - 2) new_name
FROM employees;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชจเชพเชฎเชจเซ เชเซเชฒเซเชฒเซ เช
เชเซเชทเชฐ 'm' เชฌเชฐเชพเชฌเชฐ เชเซ เช
เชจเซ เชจเชพเชฎเชจเซ เชฒเชเชฌเชพเช 5 เชเชฐเชคเชพ เชตเชงเชพเชฐเซ เชเซ.
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE SUBSTR (first_name, -1) = 'm' AND LENGTH(first_name)>5;
เชกเซเชฏเซเช
เชฒ เชเซเชฌเชฒ. เชเชตเชคเชพ เชถเซเชเซเชฐเชตเชพเชฐเชจเซ เชคเชพเชฐเซเช เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT NEXT_DAY (SYSDATE, 'FRIDAY') next_friday FROM DUAL;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. 17 เชตเชฐเซเชทเชฅเซ เชเชเชชเชจเซ เชธเชพเชฅเซ เชเซเชกเชพเชฏเซเชฒเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE MONTHS_BETWEEN (SYSDATE, hire_date) / 12 > 17;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชซเซเชจ เชจเชเชฌเชฐเชจเซ เชเซเชฒเซเชฒเซ เช
เชเช เชตเชฟเชทเชฎ เชเซ เช
เชจเซ เชคเซเชฎเชพเช เชกเซเช เชตเชกเซ เช
เชฒเช เชเชฐเซเชฒเชพ 3 เชจเชเชฌเชฐเชจเซ เชธเชฎเชพเชตเซเชถ เชฅเชพเชฏ เชเซ.
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE MOD (SUBSTR (phone_number, -1), 2) != 0
AND INSTR (phone_number,'.',1,3) = 0;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ '_' เชเชฟเชนเซเชจ เชชเชเซ เชจเซเชเชฐเซ_id เชฎเซเชฒเซเชฏเชฎเชพเช เชเชเชพเชฎเชพเช เชเชเชพ 3 เช
เชเซเชทเชฐเซ เชเซ, เชชเชฐเชเชคเซ '_' เชชเชเซเชจเซเช เช เชฎเซเชฒเซเชฏ 'CLERK' เชเซเชเชฒเซเช เชจเชฅเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE LENGTH (SUBSTR (job_id, INSTR (job_id, '_') + 1)) > 3
AND SUBSTR (job_id, INSTR (job_id, '_') + 1) != 'CLERK';
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. PHONE_NUMBER เชฎเซเชฒเซเชฏเชฎเชพเช เชคเชฎเชพเชฎ '.' เชจเซ เชฌเชฆเชฒเซเชจเซ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชธเซเชเชฟ เชฎเซเชณเชตเซ '-' เชชเชฐ
เชจเชฟเชฐเซเชฃเชฏ
SELECT phone_number, REPLACE (phone_number, '.', '-') new_phone_number
FROM employees;
เชฐเซเชชเชพเชเชคเชฐเชฃ เชเชพเชฐเซเชฏเซ เช เชจเซ เชถเชฐเชคเซ เช เชญเชฟเชตเซเชฏเชเซเชคเชฟเชเชจเซ เชเชชเชฏเซเช
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชฎเชนเชฟเชจเชพเชจเชพ เชชเชนเซเชฒเชพ เชฆเชฟเชตเชธเซ เชเชพเชฎ เชชเชฐ เชเชตเซเชฒเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ (เชเซเชเชชเชฃ)
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE TO_CHAR (hire_date, 'DD') = '01';
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. 2008เชฎเชพเช เชเชพเชฎ เชชเชฐ เชเชตเซเชฒเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE TO_CHAR (hire_date, 'YYYY') = '2008';
เชกเซเชฏเซเช
เชฒ เชเซเชฌเชฒ. เชเชตเชคเซเชเชพเชฒเชจเซ เชคเชพเชฐเซเช เชซเซเชฐเซเชฎเซเชเชฎเชพเช เชฌเชคเชพเชตเซ: เชเชตเชคเซเชเชพเชฒเซ เชเชพเชจเซเชฏเซเชเชฐเซเชจเซ เชฌเซเชเซ เชฆเชฟเชตเชธ เชเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT TO_CHAR (SYSDATE, 'fm""Tomorrow is ""Ddspth ""day of"" Month') info
FROM DUAL;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เช
เชจเซ เชคเซเชฎเชจเซ เชถเชฐเซเชเชคเชจเซ เชคเชพเชฐเซเช เชซเซเชฐเซเชฎเซเชเชฎเชพเช เชฎเซเชณเชตเซ: 21เชฎเซ เชเซเชจ, 2007
เชจเชฟเชฐเซเชฃเชฏ
SELECT first_name, TO_CHAR (hire_date, 'fmddth ""of"" Month, YYYY') hire_date
FROM employees;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. 20% เชตเชงเชพเชฐเซ เชชเชเชพเชฐ เชงเชฐเชพเชตเชคเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ. เชกเซเชฒเชฐ เชเชฟเชนเซเชจ เชธเชพเชฅเซ เชชเชเชพเชฐ เชฌเชคเชพเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT first_name, TO_CHAR (salary + salary * 0.20, 'fm$999,999.00') new_salary
FROM employees;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชซเซเชฌเซเชฐเซเชเชฐเซ 2007เชฎเชพเช เชเชพเชฎ เชชเชฐ เชเชตเซเชฒเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ.
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE hire_date BETWEEN TO_DATE ('01.02.2007', 'DD.MM.YYYY')
AND LAST_DAY (TO_DATE ('01.02.2007', 'DD.MM.YYYY'));
SELECT *
FROM employees
WHERE to_char(hire_date,'MM.YYYY') = '02.2007';
เชกเซเชฏเซเช
เชฒ เชเซเชฌเชฒ. เชตเชฐเซเชคเชฎเชพเชจ เชคเชพเชฐเซเช, + เชธเซเชเชจเซเชก, + เชฎเชฟเชจเชฟเช, + เชเชฒเชพเช, + เชฆเชฟเชตเชธ, + เชฎเชนเชฟเชจเซ, + เชตเชฐเซเชท เชจเชฟเชเชพเชธ เชเชฐเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT SYSDATE now,
SYSDATE + 1 / (24 * 60 * 60) plus_second,
SYSDATE + 1 / (24 * 60) plus_minute,
SYSDATE + 1 / 24 plus_hour,
SYSDATE + 1 plus_day,
ADD_MONTHS (SYSDATE, 1) plus_month,
ADD_MONTHS (SYSDATE, 12) plus_year
FROM DUAL;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชซเซเชฐเซเชฎเซเชเชฎเชพเช เชธเชเชชเซเชฐเซเชฃ เชชเชเชพเชฐ (เชชเชเชพเชฐ + เชเชฎเชฟเชถเชจ_pct(%)) เชงเชฐเชพเชตเชคเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชธเซเชเชฟ เชฎเซเชณเชตเซ: $24,000.00
เชจเชฟเชฐเซเชฃเชฏ
SELECT first_name, salary, TO_CHAR (salary + salary * NVL (commission_pct, 0), 'fm$99,999.00') full_salary
FROM employees;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เช
เชจเซ เชชเชเชพเชฐ เชฌเซเชจเชธเชจเซ เชเชชเชฒเชฌเซเชงเชคเชพ เชตเชฟเชถเซเชจเซ เชฎเชพเชนเชฟเชคเซ เชฎเซเชณเชตเซ (เชนเชพ/เชจเชพ)
เชจเชฟเชฐเซเชฃเชฏ
SELECT first_name, commission_pct, NVL2 (commission_pct, 'Yes', 'No') has_bonus
FROM employees;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชฆเชฐเซเช เชเชฐเซเชฎเชเชพเชฐเซเชจเซเช เชตเซเชคเชจ เชธเซเชคเชฐ เชฎเซเชณเชตเซ: 5000 เชเชฐเชคเชพ เชเชเชพเชจเซ เชจเซเชเซเช เชธเซเชคเชฐ เชเชฃเชตเชพเชฎเชพเช เชเชตเซ เชเซ, 5000 เชเชฐเชคเชพ เชตเชงเชพเชฐเซ เช
เชฅเชตเชพ เชฌเชฐเชพเชฌเชฐ เช
เชจเซ 10000 เชเชฐเชคเชพ เชเชเชพเชจเซ เชธเชพเชฎเชพเชจเซเชฏ เชธเซเชคเชฐ เชเชฃเชตเชพเชฎเชพเช เชเชตเซ เชเซ, 10000 เชเชฐเชคเชพ เชตเชงเชพเชฐเซ เช
เชจเซ เชคเซเชจเชพ เชฌเชฐเชพเชฌเชฐ เชเชเซเช เชธเซเชคเชฐ เชเชฃเชตเชพเชฎเชพเช เชเชตเซ เชเซ.
เชจเชฟเชฐเซเชฃเชฏ
SELECT first_name,
salary,
CASE
WHEN salary < 5000 THEN 'Low'
WHEN salary >= 5000 AND salary < 10000 THEN 'Normal'
ELSE 'High'
END salary_level
FROM employees;
เชฆเซเชถเซเชจเซเช เชเซเชฌเชฒ. เชฆเชฐเซเช เชฆเซเชถ เชฎเชพเชเซ, เชคเซ เชเชฏเชพ เชชเซเชฐเชฆเซเชถเชฎเชพเช เชธเซเชฅเชฟเชค เชเซ เชคเซ เชฆเชฐเซเชถเชพเชตเซ: 1-เชฏเซเชฐเซเชช, 2-เช
เชฎเซเชฐเชฟเชเชพ, 3-เชเชถเชฟเชฏเชพ, 4-เชเชซเซเชฐเชฟเชเชพ (เชเซเชกเชพเชฏเชพ เชตเชฟเชจเชพ)
เชจเชฟเชฐเซเชฃเชฏ
SELECT country_name country,
DECODE (region_id,
1, 'Europe',
2, 'America',
3, 'Asia',
4, 'Africa',
'Unknown')
region
FROM countries;
SELECT country_name
country,
CASE region_id
WHEN 1 THEN 'Europe'
WHEN 2 THEN 'America'
WHEN 3 THEN 'Asia'
WHEN 4 THEN 'Africa'
ELSE 'Unknown'
END
region
FROM countries;
เชเซเชฅ เชเชพเชฐเซเชฏเซเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชเชเชคเซเชฐเชฟเชค เชกเซเชเชพเชจเซ เชเชพเชฃ เชเชฐเชตเซ
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชฒเชเซเชคเซเชคเชฎ เช
เชจเซ เชฎเชนเชคเซเชคเชฎ เชชเชเชพเชฐ, เชตเชนเซเชฒเชพ เช
เชจเซ เชฎเซเชกเชพ เชเชเชฎเชจเชจเซ เชคเชพเชฐเซเชเซ เช
เชจเซ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชธเชเชเซเชฏเชพ เชธเชพเชฅเซ เชตเชฟเชญเชพเช_เชเชเชกเซ เชฆเซเชตเชพเชฐเชพ เช
เชนเซเชตเชพเชฒ เชฎเซเชณเชตเซ. เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชธเชเชเซเชฏเชพ เชฆเซเชตเชพเชฐเชพ เชธเซเชฐเซเช เชเชฐเซ (เชกเชฟเชธเซเช)
เชจเชฟเชฐเซเชฃเชฏ
SELECT department_id,
MIN (salary) min_salary,
MAX (salary) max_salary,
MIN (hire_date) min_hire_date,
MAX (hire_date) max_hire_Date,
COUNT (*) count
FROM employees
GROUP BY department_id
order by count(*) desc;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเซเชเชฒเชพ เชเชฐเซเชฎเชเชพเชฐเซเช เชเซ เชเซเชฎเชจเชพ เชจเชพเชฎ เชเช เช เช
เชเซเชทเชฐเชฅเซ เชถเชฐเซ เชฅเชพเชฏ เชเซ? เชเชฅเซเชฅเชพ เชฆเซเชตเชพเชฐเชพ เชธเซเชฐเซเช เชเชฐเซ. เชซเชเซเชค เชคเซ เช เชฌเชคเชพเชตเซ เชเซเชฏเชพเช เชธเชเชเซเชฏเชพ 1 เชฅเซ เชฎเซเชเซ เชนเซเชฏ
เชจเชฟเชฐเซเชฃเชฏ
SELECT SUBSTR (first_name, 1, 1) first_char, COUNT (*)
FROM employees
GROUP BY SUBSTR (first_name, 1, 1)
HAVING COUNT (*) > 1
ORDER BY 2 DESC;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเช เช เชตเชฟเชญเชพเชเชฎเชพเช เชเซเชเชฒเชพ เชเชฐเซเชฎเชเชพเชฐเซเช เชเชพเชฎ เชเชฐเซ เชเซ เช
เชจเซ เชธเชฎเชพเชจ เชชเชเชพเชฐ เชฎเซเชณเชตเซ เชเซ?
เชจเชฟเชฐเซเชฃเชฏ
SELECT department_id, salary, COUNT (*)
FROM employees
GROUP BY department_id, salary
HAVING COUNT (*) > 1;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เช
เช เชตเชพเชกเชฟเชฏเชพเชจเชพ เชฆเชฐเซเช เชฆเชฟเชตเชธเซ เชเซเชเชฒเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชญเชฐเชคเซ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชนเชคเซ เชคเซเชจเซ เช
เชนเซเชตเชพเชฒ เชฎเซเชณเชตเซ. เชเชฅเซเชฅเชพ เชฆเซเชตเชพเชฐเชพ เชธเซเชฐเซเช เชเชฐเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT TO_CHAR (hire_Date, 'Day') day, COUNT (*)
FROM employees
GROUP BY TO_CHAR (hire_Date, 'Day')
ORDER BY 2 DESC;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชตเชฐเซเชท เชธเซเชงเซเชฎเชพเช เชเซเชเชฒเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชญเชฐเชคเซ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชนเชคเซ เชคเซเชจเซ เช
เชนเซเชตเชพเชฒ เชฎเซเชณเชตเซ. เชเชฅเซเชฅเชพ เชฆเซเชตเชพเชฐเชพ เชธเซเชฐเซเช เชเชฐเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT TO_CHAR (hire_date, 'YYYY') year, COUNT (*)
FROM employees
GROUP BY TO_CHAR (hire_date, 'YYYY');
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชฐเซเชฎเชเชพเชฐเซเช เชงเชฐเชพเชตเชคเชพ เชตเชฟเชญเชพเชเซเชจเซ เชธเชเชเซเชฏเชพ เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT COUNT (COUNT (*)) department_count
FROM employees
WHERE department_id IS NOT NULL
GROUP BY department_id;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. 30 เชฅเซ เชตเชงเซ เชเชฐเซเชฎเชเชพเชฐเซเช เชธเชพเชฅเซ เชตเชฟเชญเชพเช_เชเชเชกเซเชจเซ เชธเซเชเชฟ เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT department_id
FROM employees
GROUP BY department_id
HAVING COUNT (*) > 30;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชกเชฟเชชเชพเชฐเซเชเชฎเซเชจเซเช_เชเชเชกเซเชจเซ เชธเซเชเชฟ เช
เชจเซ เชฆเชฐเซเช เชตเชฟเชญเชพเชเชจเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเชพ เชเซเชณเชพเชเชพเชฐ เชธเชฐเซเชฐเชพเชถ เชชเชเชพเชฐ เชฎเซเชณเชตเซ.
เชจเชฟเชฐเซเชฃเชฏ
SELECT department_id, ROUND (AVG (salary)) avg_salary
FROM employees
GROUP BY department_id;
เชฆเซเชถเซเชจเซเช เชเซเชฌเชฒ. เชคเชฎเชพเชฎ เชฆเซเชถเชจเชพ_เชจเชพเชฎเซเชจเชพ เชคเชฎเชพเชฎ เช
เชเซเชทเชฐเซเชจเชพ เชชเซเชฐเชฆเซเชถ_id เชธเชฐเชตเชพเชณเชพเชจเซ เชธเซเชเชฟ เชฎเซเชณเชตเซ เชเซเชฎเชพเช 60 เชฅเซ เชตเชงเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT region_id
FROM countries
GROUP BY region_id
HAVING SUM (LENGTH (country_name)) > 60;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชตเชฟเชญเชพเช_เชเชเชกเซเชจเซ เชธเซเชเชฟ เชฎเซเชณเชตเซ เชเซเชฎเชพเช เชเชฃเชพ (>1) เชจเซเชเชฐเซ_เชเชเชกเซเชจเชพ เชเชฐเซเชฎเชเชพเชฐเซเช เชเชพเชฎ เชเชฐเซ เชเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT department_id
FROM employees
GROUP BY department_id
HAVING COUNT (DISTINCT job_id) > 1;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชฎเซเชจเซเชเชฐ_เชเชเชกเซเชจเซ เชธเซเชเชฟ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชเซเชฃ เช
เชงเชฟเชเชพเชฐเซเชเชจเซ เชธเชเชเซเชฏเชพ 5 เชฅเซ เชตเชงเซ เชเซ เช
เชจเซ เชคเซเชจเชพ เชเซเชฃ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเชพ เชคเชฎเชพเชฎ เชชเชเชพเชฐเชจเซ เชธเชฐเชตเชพเชณเซ 50000 เชฅเซ เชตเชงเซ เชเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT manager_id
FROM employees
GROUP BY manager_id
HAVING COUNT (*) > 5 AND SUM (salary) > 50000;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชฎเซเชจเซเชเชฐ_เชเชเชกเซเชจเซ เชธเซเชเชฟ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชคเชฎเชพเชฎ เชเซเชฃ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชธเชฐเซเชฐเชพเชถ เชชเชเชพเชฐ 6000 เชฅเซ 9000 เชจเซ เชตเชเซเชเซ เชเซ เชเซเช เชฌเซเชจเชธ เชฎเซเชณเชตเชคเชพ เชจเชฅเซ (เชเชฎเชฟเชถเชจ_เชชเซเชธเซเชเซ เชเชพเชฒเซ เชเซ)
เชจเชฟเชฐเซเชฃเชฏ
SELECT manager_id, AVG (salary) avg_salary
FROM employees
WHERE commission_pct IS NULL
GROUP BY manager_id
HAVING AVG (salary) BETWEEN 6000 AND 9000;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. 'CLERK' เชถเชฌเซเชฆ เชธเชพเชฅเซ เชธเชฎเชพเชชเซเชค เชฅเชคเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชจเซเชเชฐเซ_เชเชเชกเซเชฎเชพเชเชฅเซ เชฎเชนเชคเซเชคเชฎ เชชเชเชพเชฐ เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT MAX (salary) max_salary
FROM employees
WHERE job_id LIKE '%CLERK';
SELECT MAX (salary) max_salary
FROM employees
WHERE SUBSTR (job_id, -5) = 'CLERK';
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชตเชฟเชญเชพเช เชฎเชพเชเซเชจเชพ เชคเชฎเชพเชฎ เชธเชฐเซเชฐเชพเชถ เชชเชเชพเชฐเชฎเชพเชเชฅเซ เชฎเชนเชคเซเชคเชฎ เชชเชเชพเชฐ เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT MAX (AVG (salary))
FROM employees
GROUP BY department_id;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชธเชเชเซเชฏเชพ เชคเซเชฎเชจเชพ เชจเชพเชฎเชจเชพ เชธเชฎเชพเชจ เชชเชคเซเชฐเซ เชธเชพเชฅเซ เชฎเซเชณเชตเซ. เชคเซ เช เชธเชฎเชฏเซ, เชซเชเซเชค เชคเซ เช เชฌเชคเชพเชตเซ เชเซเชฎเชจเซเช เชจเชพเชฎ 5 เชเชฐเชคเชพเช เชฒเชพเชเชฌเซ เชเซ เช
เชจเซ เชธเชฎเชพเชจ เชจเชพเชฎ เชงเชฐเชพเชตเชคเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชธเชเชเซเชฏเชพ 20 เชเชฐเชคเชพเช เชตเชงเซ เชเซ. เชจเชพเชฎเชจเซ เชฒเชเชฌเชพเช เชชเซเชฐเชฎเชพเชฃเซ เชธเซเชฐเซเช เชเชฐเซ.
เชจเชฟเชฐเซเชฃเชฏ
SELECT LENGTH (first_name), COUNT (*)
FROM employees
GROUP BY LENGTH (first_name)
HAVING LENGTH (first_name) > 5 AND COUNT (*) > 20
ORDER BY LENGTH (first_name);
SELECT LENGTH (first_name), COUNT (*)
FROM employees
WHERE LENGTH (first_name) > 5
GROUP BY LENGTH (first_name)
HAVING COUNT (*) > 20
ORDER BY LENGTH (first_name);
เชเซเชกเชพเชเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชฌเชนเซเชตเชฟเชง เชเซเชทเซเชเชเซเชฎเชพเชเชฅเซ เชกเซเชเชพ เชชเซเชฐเชฆเชฐเซเชถเชฟเชค เชเชฐเชตเซ
เชเซเชทเซเชเช เชเชฐเซเชฎเชเชพเชฐเซเช, เชตเชฟเชญเชพเชเซ, เชธเซเชฅเชพเชจเซ, เชฆเซเชถเซ, เชชเซเชฐเชฆเซเชถเซ. เชชเซเชฐเชฆเซเชถเซเชจเซ เชธเซเชเชฟ เช
เชจเซ เชฆเชฐเซเช เชเซเชทเซเชคเซเชฐเชฎเชพเช เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชธเชเชเซเชฏเชพ เชฎเซเชณเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT region_name, COUNT (*)
FROM employees e
JOIN departments d ON (e.department_id = d.department_id)
JOIN locations l ON (d.location_id = l.location_id)
JOIN countries c ON (l.country_id = c.country_id)
JOIN regions r ON (c.region_id = r.region_id)
GROUP BY region_name;
เชเซเชทเซเชเช เชเชฐเซเชฎเชเชพเชฐเซเช, เชตเชฟเชญเชพเชเซ, เชธเซเชฅเชพเชจเซ, เชฆเซเชถเซ, เชชเซเชฐเชฆเซเชถเซ. เชฆเชฐเซเช เชเชฐเซเชฎเชเชพเชฐเซ เชตเชฟเชถเซ เชตเชฟเชเชคเชตเชพเชฐ เชฎเชพเชนเชฟเชคเซ เชฎเซเชณเชตเซ:
เชชเซเชฐเชฅเชฎ_เชจเชพเชฎ, เชเซเชฒเซเชฒเซเช_เชจเชพเชฎ, เชตเชฟเชญเชพเช, เชจเซเชเชฐเซ, เชถเซเชฐเซ, เชฆเซเชถ, เชชเซเชฐเชฆเซเชถ
เชจเชฟเชฐเซเชฃเชฏ
SELECT First_name,
Last_name,
Department_name,
Job_id,
street_address,
Country_name,
Region_name
FROM employees e
JOIN departments d ON (e.department_id = d.department_id)
JOIN locations l ON (d.location_id = l.location_id)
JOIN countries c ON (l.country_id = c.country_id)
JOIN regions r ON (c.region_id = r.region_id);
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. 6 เชฅเซ เชตเชงเซ เชเชฐเซเชฎเชเชพเชฐเซเช เชงเชฐเชพเชตเชคเชพ เชคเชฎเชพเชฎ เชฎเซเชจเซเชเชฐเซเชจเซ เชฌเชคเชพเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT man.first_name, COUNT (*)
FROM employees emp JOIN employees man ON (emp.manager_id = man.employee_id)
GROUP BY man.first_name
HAVING COUNT (*) > 6;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชฌเชงเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฌเชคเชพเชตเซ เชเซ เชเซเช เชเซเชเชจเซ เชเชพเชฃ เชเชฐเชคเชพ เชจเชฅเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT emp.first_name
FROM employees emp
LEFT JOIN employees man ON (emp.manager_id = man.employee_id)
WHERE man.FIRST_NAME IS NULL;
SELECT first_name
FROM employees
WHERE manager_id IS NULL;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ, เชเซเชฌ_เชเชคเชฟเชนเชพเชธ. เชเชฐเซเชฎเชเชพเชฐเซ เชเซเชฌเชฒ เชฌเชงเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชธเชเชเซเชฐเชนเชฟเชค เชเชฐเซ เชเซ. เชเซเชฌ_เชนเชฟเชธเซเชเชฐเซ เชเซเชฌเชฒ เช เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชธเซเชเซเชฐ เชเชฐเซ เชเซ เชเซเชฎเชฃเซ เชเชเชชเชจเซ เชเซเชกเซ เชฆเซเชงเซ เชนเชคเซ. เชเชเชชเชจเซเชฎเชพเช เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเช เช
เชจเซ เชคเซเชฎเชจเซ เชธเซเชฅเชฟเชคเชฟ เชตเชฟเชถเซ เชฐเชฟเชชเซเชฐเซเช เชฎเซเชณเชตเซ (เชฐเซเชเชเชพเชฐ เช
เชฅเชตเชพ เชชเซเชฐเชธเซเชฅเชพเชจเชจเซ เชคเชพเชฐเซเช เชธเชพเชฅเซ เชเชเชชเชจเซ เชเซเชกเซ เชฆเซเชงเซ)
เชเชฆเชพเชนเชฐเชฃ:
เชชเซเชฐเชฅเชฎ_เชจเชพเชฎ | เชธเซเชฅเชฟเชคเชฟ
เชเซเชจเชฟเชซเชฐ | 31 เชกเชฟเชธเซเชฎเซเชฌเชฐ, 2006เชจเชพ เชฐเซเช เชเชเชชเชจเซ เชเซเชกเซ เชฆเซเชงเซ
เชเซเชฒเซเชฐเชพ | เชนเชพเชฒเชฎเชพเช เชเชพเชฐเซเชฏเชฐเชค เชเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT first_name,
NVL2 (
end_date,
TO_CHAR (end_date, 'fm""Left the company at"" DD ""of"" Month, YYYY'),
'Currently Working')
status
FROM employees e LEFT JOIN job_history j ON (e.employee_id = j.employee_id);
เชเซเชทเซเชเช เชเชฐเซเชฎเชเชพเชฐเซเช, เชตเชฟเชญเชพเชเซ, เชธเซเชฅเชพเชจเซ, เชฆเซเชถเซ, เชชเซเชฐเชฆเซเชถเซ. เชฏเซเชฐเซเชชเชฎเชพเช เชฐเชนเซเชคเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ (เชชเซเชฐเชฆเซเชถ_เชจเชพเชฎ)
เชจเชฟเชฐเซเชฃเชฏ
SELECT first_name
FROM employees
JOIN departments USING (department_id)
JOIN locations USING (location_id)
JOIN countries USING (country_id)
JOIN regions USING (region_id)
WHERE region_name = 'Europe';
SELECT first_name
FROM employees e
JOIN departments d ON (e.department_id = d.department_id)
JOIN locations l ON (d.location_id = l.location_id)
JOIN countries c ON (l.country_id = c.country_id)
JOIN regions r ON (c.region_id = r.region_id)
WHERE region_name = 'Europe';
เชเซเชฌเชฒ เชเชฐเซเชฎเชเชพเชฐเซเช, เชตเชฟเชญเชพเชเซ. 30 เชฅเซ เชตเชงเซ เชเชฐเซเชฎเชเชพเชฐเซเช เชงเชฐเชพเชตเชคเชพ เชคเชฎเชพเชฎ เชตเชฟเชญเชพเชเซ เชฌเชคเชพเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT department_name, COUNT (*)
FROM employees e JOIN departments d ON (e.department_id = d.department_id)
GROUP BY department_name
HAVING COUNT (*) > 30;
เชเซเชฌเชฒ เชเชฐเซเชฎเชเชพเชฐเซเช, เชตเชฟเชญเชพเชเซ. เชเซเชเชชเชฃ เชตเชฟเชญเชพเชเชฎเชพเช เชจ เชนเซเชฏ เชคเซเชตเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฌเชคเชพเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT first_name
FROM employees e
LEFT JOIN departments d ON (e.department_id = d.department_id)
WHERE d.department_name IS NULL;
SELECT first_name
FROM employees
WHERE department_id IS NULL;
เชเซเชฌเชฒ เชเชฐเซเชฎเชเชพเชฐเซเช, เชตเชฟเชญเชพเชเซ. เชเชฐเซเชฎเชเชพเชฐเซเช เชตเชเชฐเชจเชพ เชคเชฎเชพเชฎ เชตเชฟเชญเชพเชเซ เชฌเชคเชพเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT department_name
FROM employees e
RIGHT JOIN departments d ON (e.department_id = d.department_id)
WHERE first_name IS NULL;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชฌเชงเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฌเชคเชพเชตเซ เชเซ เชเซเชฎเชจเซ เชชเชพเชธเซ เชเซเช เชเซเชฃ เชจเชฅเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT man.first_name
FROM employees emp
RIGHT JOIN employees man ON (emp.manager_id = man.employee_id)
WHERE emp.FIRST_NAME IS NULL;
เชเซเชฌเชฒ เชเชฐเซเชฎเชเชพเชฐเซเช, เชจเซเชเชฐเซเช, เชตเชฟเชญเชพเชเซ. เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชซเซเชฐเซเชฎเซเชเชฎเชพเช เชฌเชคเชพเชตเซ: First_name, Job_title, Department_name.
เชเชฆเชพเชนเชฐเชฃ:
เชชเซเชฐเชฅเชฎ_เชจเชพเชฎ | เชจเซเชเชฐเซเชจเซเช เชถเซเชฐเซเชทเช | เชตเชฟเชญเชพเช_เชจเชพเชฎ
เชกเซเชจเชพเชฒเซเชก | เชถเชฟเชชเชฟเชเช | เชเชพเชฐเชเซเชจ เชถเชฟเชชเชฟเชเช
เชจเชฟเชฐเซเชฃเชฏ
SELECT first_name, job_title, department_name
FROM employees e
JOIN jobs j ON (e.job_id = j.job_id)
JOIN departments d ON (d.department_id = e.department_id);
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชธเชเชเชพเชฒเชเซเชจเซ 2005เชฎเชพเช เชจเซเชเชฐเซ เชฎเชณเซ เชนเชคเซ, เชชเชฐเชเชคเซ เชคเซ เช เชธเชฎเชฏเซ, เช เชเชพเชฎเชฆเชพเชฐเซเช เชชเซเชคเซ 2005 เชชเชนเซเชฒเชพ เชจเซเชเชฐเซ เชฎเซเชณเชตเซ เชนเชคเซ.
เชจเชฟเชฐเซเชฃเชฏ
SELECT emp.*
FROM employees emp JOIN employees man ON (emp.manager_id = man.employee_id)
WHERE TO_CHAR (man.hire_date, 'YYYY') = '2005'
AND emp.hire_date < TO_DATE ('01012005', 'DDMMYYYY');
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชฎเซเชจเซเชเชฐเชจเซ เชเซเชเชชเชฃ เชตเชฐเซเชทเชจเชพ เชเชพเชจเซเชฏเซเชเชฐเซ เชฎเชนเชฟเชจเชพเชฎเชพเช เชจเซเชเชฐเซ เชฎเชณเซ เชเซ เช
เชจเซ เช เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชจเซเชเชฐเซ_เชถเซเชฐเซเชทเชเชจเซ เชฒเชเชฌเชพเช 15 เช
เชเซเชทเชฐเซเชฅเซ เชตเชงเซ เชเซ.
เชจเชฟเชฐเซเชฃเชฏ
SELECT emp.*
FROM employees emp
JOIN employees man ON (emp.manager_id = man.employee_id)
JOIN jobs j ON (emp.job_id = j.job_id)
WHERE TO_CHAR (man.hire_date, 'MM') = '01' AND LENGTH (j.job_title) > 15;
เชชเซเชฐเชถเซเชจเซ เชเชเซเชฒเชตเชพ เชฎเชพเชเซ เชธเชฌเชเซเชตเซเชฐเซเชเชจเซ เชเชชเชฏเซเช เชเชฐเชตเซ
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชธเซเชฅเซ เชฒเชพเชเชฌเซ เชจเชพเชฎ เชงเชฐเชพเชตเชคเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ.
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE LENGTH (first_name) =
(SELECT MAX (LENGTH (first_name)) FROM employees);
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเชพ เชธเชฐเซเชฐเชพเชถ เชชเชเชพเชฐ เชเชฐเชคเชพเช เชตเชงเซ เชชเชเชพเชฐ เชงเชฐเชพเชตเชคเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ.
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE salary > (SELECT AVG (salary) FROM employees);
เชเซเชฌเชฒ เชเชฐเซเชฎเชเชพเชฐเซเช, เชตเชฟเชญเชพเชเซ, เชธเซเชฅเชพเชจเซ. เชคเซ เชถเชนเซเชฐ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชพเช เชเชฐเซเชฎเชเชพเชฐเซเช เชเซเชฒ เชเชเชพเชฎเชพเช เชเชเซ เชเชฎเชพเชฃเซ เชเชฐเซ เชเซ.
เชจเชฟเชฐเซเชฃเชฏ
SELECT city
FROM employees e
JOIN departments d ON (e.department_id = d.department_id)
JOIN locations l ON (d.location_id = l.location_id)
GROUP BY city
HAVING SUM (salary) =
( SELECT MIN (SUM (salary))
FROM employees e
JOIN departments d ON (e.department_id = d.department_id)
JOIN locations l ON (d.location_id = l.location_id)
GROUP BY city);
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชฎเซเชจเซเชเชฐเชจเซ 15000 เชฅเซ เชตเชงเซ เชชเชเชพเชฐ เชฎเชณเซ เชเซ.
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE manager_id IN (SELECT employee_id
FROM employees
WHERE salary > 15000)
เชเซเชฌเชฒ เชเชฐเซเชฎเชเชพเชฐเซเช, เชตเชฟเชญเชพเชเซ. เชเชฐเซเชฎเชเชพเชฐเซเช เชตเชเชฐเชจเชพ เชคเชฎเชพเชฎ เชตเชฟเชญเชพเชเซ เชฌเชคเชพเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM departments
WHERE department_id NOT IN (SELECT department_id
FROM employees
WHERE department_id IS NOT NULL);
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชฎเซเชจเซเชเชฐ เชจ เชนเซเชฏ เชคเซเชตเชพ เชคเชฎเชพเชฎ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฌเชคเชพเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE employee_id NOT IN (SELECT manager_id
FROM employees
WHERE manager_id IS NOT NULL)
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. 6 เชฅเซ เชตเชงเซ เชเชฐเซเชฎเชเชพเชฐเซเช เชงเชฐเชพเชตเชคเชพ เชคเชฎเชพเชฎ เชฎเซเชจเซเชเชฐเซเชจเซ เชฌเชคเชพเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees e
WHERE (SELECT COUNT (*)
FROM employees
WHERE manager_id = e.employee_id) > 6;
เชเซเชฌเชฒ เชเชฐเซเชฎเชเชพเชฐเซเช, เชตเชฟเชญเชพเชเซ. IT เชตเชฟเชญเชพเชเชฎเชพเช เชเชพเชฎ เชเชฐเชคเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฌเชคเชพเชตเซ
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE department_id = (SELECT department_id
FROM departments
WHERE department_name = 'IT');
เชเซเชฌเชฒ เชเชฐเซเชฎเชเชพเชฐเซเช, เชจเซเชเชฐเซเช, เชตเชฟเชญเชพเชเซ. เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชซเซเชฐเซเชฎเซเชเชฎเชพเช เชฌเชคเชพเชตเซ: First_name, Job_title, Department_name.
เชเชฆเชพเชนเชฐเชฃ:
เชชเซเชฐเชฅเชฎ_เชจเชพเชฎ | เชจเซเชเชฐเซเชจเซเช เชถเซเชฐเซเชทเช | เชตเชฟเชญเชพเช_เชจเชพเชฎ
เชกเซเชจเชพเชฒเซเชก | เชถเชฟเชชเชฟเชเช | เชเชพเชฐเชเซเชจ เชถเชฟเชชเชฟเชเช
เชจเชฟเชฐเซเชฃเชฏ
SELECT first_name,
(SELECT job_title
FROM jobs
WHERE job_id = e.job_id)
job_title,
(SELECT department_name
FROM departments
WHERE department_id = e.department_id)
department_name
FROM employees e;
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชธเชเชเชพเชฒเชเซเชจเซ 2005เชฎเชพเช เชจเซเชเชฐเซ เชฎเชณเซ เชนเชคเซ, เชชเชฐเชเชคเซ เชคเซ เช เชธเชฎเชฏเซ, เช เชเชพเชฎเชฆเชพเชฐเซเช เชชเซเชคเซ 2005 เชชเชนเซเชฒเชพ เชจเซเชเชฐเซ เชฎเซเชณเชตเซ เชนเชคเซ.
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees
WHERE manager_id IN (SELECT employee_id
FROM employees
WHERE TO_CHAR (hire_date, 'YYYY') = '2005')
AND hire_date < TO_DATE ('01012005', 'DDMMYYYY');
เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซเช เชเซเชฌเชฒ. เชเชตเชพ เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชฏเชพเชฆเซ เชฎเซเชณเชตเซ เชเซ เชเซเชฎเชจเชพ เชฎเซเชจเซเชเชฐเชจเซ เชเซเชเชชเชฃ เชตเชฐเซเชทเชจเชพ เชเชพเชจเซเชฏเซเชเชฐเซ เชฎเชนเชฟเชจเชพเชฎเชพเช เชจเซเชเชฐเซ เชฎเชณเซ เชเซ เช
เชจเซ เช เชเชฐเซเชฎเชเชพเชฐเซเชเชจเซ เชจเซเชเชฐเซ_เชถเซเชฐเซเชทเชเชจเซ เชฒเชเชฌเชพเช 15 เช
เชเซเชทเชฐเซเชฅเซ เชตเชงเซ เชเซ.
เชจเชฟเชฐเซเชฃเชฏ
SELECT *
FROM employees e
WHERE manager_id IN (SELECT employee_id
FROM employees
WHERE TO_CHAR (hire_date, 'MM') = '01')
AND (SELECT LENGTH (job_title)
FROM jobs
WHERE job_id = e.job_id) > 15;
เชนเชฎเชฃเชพเช เชฎเชพเชเซ เชเชเชฒเซเช เช.
เชฎเชจเซ เชเชถเชพ เชเซ เชเซ เชเชพเชฐเซเชฏเซ เชฐเชธเชชเซเชฐเชฆ เช
เชจเซ เชเชคเซเชคเซเชเช เชนเชคเชพ.
เชนเซเช เชถเชเซเชฏ เชคเซเชเชฒเซเช เช เชธเซเชเชฟเชฎเชพเช เชเชฎเซเชฐเซเชถ.
เชฎเชจเซ เชเซเชเชชเชฃ เชเชฟเชชเซเชชเชฃเซเช เช
เชจเซ เชธเซเชเชจเซเชฎเชพเช เชชเชฃ เชเชจเชเชฆ เชฅเชถเซ.
เชชเซเชเชธ: เชเซ เชเซเช SELECT เชชเชฐ เชเซเช เชฐเชธเชชเซเชฐเชฆ เชเชพเชฐเซเชฏ เชธเชพเชฅเซ เชเชตเซ เชเซ, เชคเซ เชเชฟเชชเซเชชเชฃเซเชเชฎเชพเช เชฒเชเซ, เชนเซเช เชคเซเชจเซ เชธเซเชเชฟเชฎเชพเช เชเชฎเซเชฐเซเชถ.
ะกะฟะฐัะธะฑะพ.
เชธเซเชฐเซเชธ: www.habr.com