Лабораторная работа №1
1. Определите структуру всех таблиц базы данных.
SELECT * FROM tab;
2. Отображение имен и зарплат сотрудников.
SELECT first_name, salary FROM employees;
3. Отображение фамилии и зарплаты сотрудников, зарабатывающих более 12 000 долларов США.
SELECT last_name,salary FROM employees WHERE salary>12000;
4. Отображение фамилии и номера отдела для номера сотрудника 176.
SELECT last_name, DEPARTMENT_id FROM employees WHERE employee_id=176;
5. Отображение фамилии и зарплаты всех сотрудников, чья зарплата не находится в диапазоне от 5000 до 12000 долларов.
SELECT last_name,SALARY FROM employees WHERE 500012000;
6. Отобразите фамилию, идентификатор должности и дату начала (дату найма) для сотрудников с фамилиями Матос и Тейлор. Запрос в возрастающем порядке по дате начала.
SELECT last_name, job_id, hire_date FROM employees
WHERE last_name = 'Matos' OR last_name = 'Taylor' ORDER BY hire_date ASC;
7. Отображение фамилий и номеров отделов всех сотрудников отделов 20 или 50 в алфавитном порядке по возрастанию.
SELECT last_name, department_id FROM employees
WHERE department_id in (20, 50) ORDER BY last_name;
8. Отображение фамилии и должности всех сотрудников, у которых нет руководителя.
SELECT last_name, job_id FROM employees WHERE manager_id is null;
9. Отображение фамилии, зарплаты и комиссионных для всех сотрудников, получающих комиссионные. Сортировать данные по убыванию порядок заработной платы и комиссионных.
SELECT last_name, salary, commission_pct FROM employees
WHERE COMMISSION_PCT is not null ORDER BY salary DESC;
10. Найдите самую высокую, самую низкую, сумму и среднюю зарплату всех сотрудников. Обозначьте столбцы Максимум, Минимум, Сумма, и Среднее соответственно.
SELECT MAX(salary) MAX_SAL,MIN(salary) MIN_SAL, SUM(salary) SUM_SAL, AVG(salary) AVG_SAL FROM employees;
11. Измените предыдущий запрос, чтобы отобразить минимальную, максимальную, сумму и среднюю зарплату для каждого типа работы (job_id).
12. Отобразите количество людей с одинаковой работой.
SELECT * FROM employees WHERE job_id=job_id;
13. Определите количество менеджеров, не перечисляя их. Обозначьте столбец «Количество менеджеров». Подсказка: используйте
Столбец MANAGER_ID для определения количества менеджеров.
SELECT COUNT(MANAGER_ID) MAN_SUM FROM employees;
14. Найдите разницу между самой высокой и самой низкой зарплатой. Обозначьте столбец – Difference.
SELECT MAX(salary)- MIN(salary) DIFFERENCE FROM employees;
15. Найдите адреса всех отделов. Используйте таблицы LOCATIONS и COUNTRIES.
SELECT * FROM countries c,locations l WHERE c.country_id=l.country_id;
Достарыңызбен бөлісу: |