Лабораторная работа 1
THE_OUTPUT
100,Steven,King,SKING,515.123.4567,AD_PRES,17-JUN-87,24000,,90
101,Neena,Kochhar,NKOCHHAR,515.123.4568,AD_VP,100,21-SEP-89,17000,,90
102,Lex,De Haan,LDEHAAN,515.123.4569,AD_VP,100,13-JAN-93,17000,,90
103,Alexander,Hunold,AHUNOLD,590.423.4567,IT_PROG,102,03-JAN-90,9000,,60
104,Bruce,Ernst,BERNST,590.423.4568,IT_PROG,103,21-MAY-91,6000,,60
107,Diana,LorentzDLORENTZ,590.423.5567,IT_PROG,103,07-FEB-99,4200,,60
…..
THE_OUTPUT
100,Steven,King,SKING,515.123.4567,AD_PRES,17-JUN-87,24000,,90
101,Neena,Kochhar,NKOCHHAR,515.123.4568,AD_VP,100,21-SEP-89,17000,,90
102,Lex,De Haan,LDEHAAN,515.123.4569,AD_VP,100,13-JAN-93,17000,,90
103,Alexander,Hunold,AHUNOLD,590.423.4567,IT_PROG,102,03-JAN-90,9000,,60
104,Bruce,Ernst,BERNST,590.423.4568,IT_PROG,103,21-MAY-91,6000,,60
107,Diana,LorentzDLORENTZ,590.423.5567,IT_PROG,103,07-FEB-99,4200,,60
…..
select first_name+', '+last_name+', '+email+', '+phone_number+', '+format(hire_date,"Long Date")+', '+job_id+', '+format(salary,"General Number")+', '+format(commission_pct,"General Number")+', '+format(manager_id,"General Number")+', '+format(department_id,"General Number") as the_output from employees;
Лабораторная работа 2
Выборка данных и изменение последовательности вывода строк
Ограничение количества возвращаемых строк с помощью предложения WHERE
Сортировка строк с помощью предложения ORDER BY
Создайте запрос для вывода имени и заработной платы служащих, зарабатывающих более $12000. Сохраните команду SQL в БД (lab2_1.sql). Выполните запрос.
LAST_NAME | SALARY |
King | 24000 |
Kochhar | 17000 |
De Haan | 17000 |
Hartstein | 13000 |
select LAST_NAME, SALARY from EMPLOYEES where SALARY>=12000 order by SALARY asc;
Создайте запрос для вывода фамилии и номера отдела служащего под номером 176
LAST_NAME | DEPARTMENT_ID |
Taylor | 80 |
select LAST_NAME, DEPARTMENT_ID from EMPLOYEES where EMPLOYEE_ID=176;
Измените файл lab2_1.sql и выведите фамилии и оклады всех служащих, чей оклад не входит в диапазон от $5000 до $12000. сохраните команду SQL в БД (lab2_3.sql).
LAST_NAME | SALARY |
King | 24000 |
Kochhar | 17000 |
De Haan | 17000 |
Lorentz | 4200 |
Rajs | 3500 |
Davies | 3100 |
Matos | 2600 |
Vargas | 2500 |
Whalen | 4400 |
Hartstein | 13000 |
select LAST_NAME, SALARY from EMPLOYEES where SALARY not between 5000 and 12000 order by SALARY desc;
LAST_NAME
JOB_ID
HIRE_DATE
Matos
ST_CLERK
15-MAR-98
Taylor
SA_REP
24-MAR-98
Выведите фамилию, идентификатор должности и дату начала работы всех служащих, нанятых в период с 20 февраля 1998 по 1 мая 1998 г. Отсортируйте данные в порядке возрастания даты найма.
select LAST_NAME, JOB_ID, format(HIRE_DATE,"Medium Date") as `HIRE DATE` from EMPLOYEES where HIRE_DATE between CDate('20/02/1998') and CDate('01/05/1998') order by HIRE_DATE asc;
Выведите фамилию и номер отдела всех служащих из отделов 20 и 50. Отсортируйте данные по фамилиям в алфавитном порядке.
LAST_NAME | DEPARTMENT_ID |
Davies | 50 |
Fay | 20 |
Hartstein | 20 |
Matos | 50 |
Mourgos | 50 |
Rajs | 50 |
Vargas | 50 |
7 row selected
select LAST_NAME, DEPARTMENT_ID from EMPLOYEES where DEPARTMENT_ID=20 or DEPARTMENT_ID=50 order by LAST_NAME asc;
Измените запрос lab2_3.sql для вывода фамилий и окладов служащих отделов 20 и 50, зарабатывающих от $5000 до $12000. Назовите столбцы Employee и Mounthly Salary, соответственно. Вновь сохраните команду SQL в БД (lab2_6.sql). Выполните запрос.
EMPLOYEE | Mounthly Salary |
Mourgos | 5800 |
Fay | 6000 |
select LAST_NAME as EMPLOYEE, SALARY as `Mounthly Salary` from EMPLOYEES where SALARY between 5000 and 12000 order by SALARY;
Выведите фамилию и дату найма всех служащих, нанятых в 1994 г.
LAST_NAME | HIRE_DATE |
Higgins | 07-JUN-94 |
Gietz | 07-JUN-94 |
select LAST_NAME, HIRE_DATE from EMPLOYEES where Year(HIRE_DATE)=1994;
Выведите фамилии и должности всех служащих, не имеющих менеджера.
LAST_NAME | JOB_ID |
King | AD_PRES |
select LAST_NAME, JOB_ID from EMPLOYEES where MANAGER_ID is null;
Выведите фамилию, и комиссионные всех служащих, зарабатывающих комиссионные. Отсортируйте данные в порядке убывания окладов и комиссионных.
LAST_NAME | SALARY | COMMISSION_PCT |
Abel | 11000 | .3 |
Zlotkey | 10500 | .2 |
Taylor | 8600 | .2 |
Grant | 7000 | .15 |
select LAST_NAME, SALARY, COMMISSION_PCT from EMPLOYEES where COMMISSION_PCT is not null order by SALARY desc, COMMISSION_PCT desc;
Выведите все фамилии служащих, в которых третья буква – а.
LAST_NAME
Grant
Whalen
select distinct LAST_NAME from EMPLOYEES where LAST_NAME like '??a*';
Выведите фамилии всех служащих, в которых есть буквы «а» и «е».
LAST_NAME |
De Haan |
Davies |
Whalen |
Hartstein |
select distinct LAST_NAME from EMPLOYEES where LAST_NAME like '*[ae]*';
запросите фамилии, должности и оклады всех служащих, работающих торговыми представителями (SA_REP) или клерками на складе (ST_CLERK) и с окладом, не равным $2500, $3500 и $7000.
LAST_NAME
JOB_ID
SALARY
Davies
ST_CLERK
3100
Matos
ST_CLERK
2600
Abel
SA_REP
11000
Taylor
SA_REP
8600
select LAST_NAME,JOB_ID,SALARY from EMPLOYEES where (JOB_ID='SA_REP' or JOB_ID='ST_CLERK') and SALARY not in (2500,3500,7000);
Измените lab2_6.sql так, чтобы получить фамилии оклады и комиссионные всех служащих, у которых сумма комиссионных превышает 20%. Выполните запрос ещё раз. Сохраните запрос в БД lab2_13.sql.
Employee | Monthly Salary | COMMISSION_PCT |
Zlotkey | 10500 | .2 |
Taylor | 8600 | .2 |
select LAST_NAME, SALARY, COMMISSION_PCT from EMPLOYEES where COMMISSION_PCT is not null and COMMISSION_PCT>20 order by SALARY desc, COMMISSION_PCT desc;
страница 1страница 2страница 3 ... страница 5страница 6
скачать
Другие похожие работы: