Учебное пособие Омск • 2008 Федеральное агентство по образованию




НазваниеУчебное пособие Омск • 2008 Федеральное агентство по образованию
страница7/15
Дата15.01.2013
Размер1.47 Mb.
ТипУчебное пособие
1   2   3   4   5   6   7   8   9   10   ...   15
20

- в Oracle:

SELECT Name, Lastname, Surname, Birthday, Tnumber FROM ADMINPAY. Staff WHERE (Birthday BETWEEN 'Ol-JAN-1950' AND '01-JAN-1960') OR (T_number>=10 AND T_number<=150);

Многотабличные запросы (выборка из двух таблиц, выборка из трех таблиц с использованием JOIN).

25. Вывести список сотрудников, получающих одну из следующих надбавок к зарплате: 'премию', 'оплату учебы', 'поощрение':

- в VFP, MS SQL Server, Access:

SELECT Name, Lastname, Surname FROM Staff INNER JOIN Pay INNER JOIN Items_pay ON Pay.Code_pay = Items_pay.Code_pay ON Staff.Tnumber = Pay.Tnumber WHERE Item_pay Щ('премия', 'оплата учебы', 'поощрение')

или

SELECT Name, Lastname, Surname FROM (Staff INNER JOIN Pay ON Staff. Tnumber = Pay.Tnumber) INNER JOIN Items_pay ON Pay.Code_pay = Items_pay.Code_pay WHERE Item_pay ПЧСпремия', 'оплата учебы', 'поощрение')

- в Oracle:

SELECT Name, Lastname, Surname FROM (ADMINPAY. Staff INNER JOIN ADMINPAY.Pay ON Staff. Tnumber = Pay.Tnumber) INNER JOIN ADMIN_PAY.Items_pay ON Pay.Code_pay = Items_pay.Code_pay WHERE Item_pay Щ('премия', 'оплата учебы', 'поощрение');

INNER JOIN создает объединение пары таблиц, из которого выбираются только те записи, которые содержат совпадающие значения в полях связи, указанных после ключевого слова ON.

LEFT JOIN создает объединение пары таблиц, из которого выбираются все записи из левой таблицы, а также записи из правой таблицы, значения поля связи которой совпадают со значениями поля связи левой таблицы.

RIGHT JOIN создает объединение пары таблиц, из которой выбираются все записи из правой таблицы, а также записи из левой таблицы, значения поля связи которой совпадают со значениями поля связи правой таблицы.

ON - ключевое слово, после которого указывается условие связи пары таблиц.

26. Вывести неповторяющийся список всех сотрудников, у которых размер зарплаты составил от 2000 до 3000 руб. (рис. 11):

21

- в VFP, MS SQL Server, Access:

SELECT DISTINCT Name, Lastname, Surname FROM Staff INNER JOIN Pay ON Staff.Tnumber = Pay.Tnumber WHERE (Sum_pay>=2000) AND (Sum_pay<3000)

- в Oracle:

SELECT DISTINCT Name, Lastname, Surname FROM ADMINPAY. Staff INNER JOIN ADMINPAY.Pay ON Staff.Tnumber = Pay.Tnumber WHERE (Sum_pay>=2000) AND (Sum_pay<3000);



Name

Lastname

Surname

Василий

Михайлович

Сидоров

Иван

Петрович

Иванов

Савел

Игнатьевич

Соянов

Рис. 11. Результат многотабличного запроса

27. Вывести коды зарплат, в которых была статья вычетов 'за
бездетность':


- в VFP, MS SQL Server, Access:

SELECT Pay.Code_pay FROM Pay INNER JOIN Items_pay ON Pay.Code_pay = Items_pay.Code_pay WHERE Item_pay = 'за бездетность'

- в Oracle:

SELECT Pay.Code_pay FROM ADMINPAY.Pay INNER JOIN ADMIN_PAY.Items_pay ON Pay.Code_pay = Items_pay.Code_pay WHERE Item_pay = 'за бездетность';

28. Вывести неповторяющийся список всех сотрудников, в которых
была в зарплате статья вычетов 'за бездетность':


- в VFP, MS SQL Server, Access:

SELECT DISTINCT Name, Lastname, Surname FROM Staff INNER JOIN Pay INNER JOIN Items_pay ON Pay.Code_pay = Items_pay.Code_pay ON Staff. Tnumber = Pay.Tnumber WHERE Item_pay = 'за бездетность'

- в Oracle:

SELECT DISTINCT Name, Lastname, Surname FROM ADMINPAY. Staff INNER JOIN ADMINPAY.Pay INNER JOIN ADMIN_PAY.Items_pay ON Pay.Code_pay = Items_pay.Code_pay ON Staff. Tnumber = Pay.Tnumber WHERE Item_pay = 'за бездетность';

Вычисления.

29. Вывести список сотрудников, должности и срок их работы в годах
с сортировкой по уменьшению стажа (рис. 12):


22

- в VFP, Access:

SELECT Name, Lastname, Surname, Post, (Date() - Date_input)/365.25 FROM Staff ORDER BY Dateinput

- в MS SQL Server:

SELECT Name, Lastname, Surname, Post, CAST((GetDate() - Dateinput) AS Bigint)/365.25 FROM Staff ORDER BY Dateinput

- в Oracle:

SELECT Name, Lastname, Surname, Post, (SysDate - Date_input)/365.25 FROM ADMINPAY. Staff ORDER BY Dateinput;



Name

Lastname

Surname

Post

Ехр_5

Анна

Михайловна

Иванова

Строитель

25.1061

Савел

Игнатьевич

Соянов

Строитель

24.4873

Иван

Васильевич

Артемьев

Главный инженер

6.8583

Василий

Михайлович

Сидоров

Начальник отдела кадров

5.1006

Иван

Петрович

Иванов

Бухгалтер

4.6899

Петр

Аркадьевич

Васильков

Специалист отдела кадров

4.0548

Виктор

Семенович

Ушаков

Бухгалтер

1.0897

Рис. 12. Результат запроса с вычислением

30. Вывести список сотрудников, у которых еще не было дня рождения в текущем году, а также вывести количество дней до их дней рождения в текущем году:

- в VFP:

SET DATE TO GERMAN

&& необходима для установки даты в формате дд.мм.гг SELECT Name, Lastname, Surname, Post, Birthday, CTOD(str(day(Birthday))+,.,+str(month(Birthday))+'.,+str(YEAR(Date())))-DATE() FROM Staff Where CTOD (str(day(Birthday)) + ' . ' + str (month(Birthday)) + ' .' + str (YEAR(Date())))-DATE()) >0

- в MS SQL SERVER:

SET DATEFORMAT dmy —дата в формате дд.мм.гггг

SELECT Name, Lastname, Surname, Post, Birthday,

DATEDIFF(day, getdate(), CAST(str(day(Birthday))+ '.' + str(month(Birthday)) + '.' +str(YEAR(GetDate())) AS datetime)) AS [Дней до дня рождения] FROM Staff Where DATEDIFF(day, getdate(), CAST(str(day(Birthday)) + '.' + str(month(Birthday)) + '.' + str(YEAR(GetDate())) AS datetime))>0

23

- в Oracle:

SELECT Surname, TO_NUMBER( TO_DATE( ( to_char(Birthday, 'dd')H'.'||to_char(Birthday, 'mm')|r.'||to_char(Sysdate,'yyyy')), 'DD-MM-YYYY')-SYSDATE) FROM ADMINP AY. Staff WHERE TO_NUMBER( TO_DATE( (to_char( Birthday ,'dd')| |'.'||to_char( Birthday,'mm') ||'.'||to_char(Sysdate,'yyyy')), 'DD-MM-YYYY)-SYSDATE) >0;

31. Вывести список всех сотрудников, их табельные номера, даты и суммы получения зарплаты на руки и зарплаты, если бы у них не брали налог 'за бездетность':

- в VFP, MS SQL Server, Access:

SELECT Staff. Tnumber, Name, Surname, Payday, Sum_pay, (Sum_pay-Itemsum) FROM Staff INNER JOIN Pay INNER JOIN Items_pay ON Pay.Code_pay = Items_pay.Code_pay ON Staff.Tnumber = Pay.Tnumber WHERE Item_pay = 'за бездетность'

- в Oracle:

SELECT Staff. Tnumber, Name, Surname, Payday, Sum_pay, (Sum_pay-Itemsum) FROM ADMINPAY.Staff INNER JOIN ADMINPAY.Pay INNER JOIN ADMIN_PAY.Items_pay ON Pay.Code_pay Items_pay.Code_pay ON Staff. Tnumber = Pay.Tnumber WHERE Item_pay = 'за бездетность';

В формуле запроса стоит минус, т.к. в таблице значения налогов хранятся как отрицательные числа.

Вычисление итоговых значений с использованием агрегатных функций.

32. Вывести среднюю зарплату, которая когда-либо выдавалась на предприятии:

  • в VFP, MS SQL Server, Access: SELECT AVG(Sum_pay) FROM Pay

  • в Oracle:

SELECT AVG(Sum_pay) FROM ADMINPAY.Pay;

AVG() - функция вычисляет среднее всех значений, содержащихся в столбце. COUNT( ) - функция подсчитывает количество значений, содержащихся в столбце. COUNT(*) - функция подсчитывает количество строк в таблице результатов запроса. МАХ( ) - функция находит наибольшее среди всех значений, содержащихся в столбце. MIN( ) - функция находит наименьшее среди всех значений, содержащихся в столбце. SUM( ) - функция вычисляет сумму всех значений, содержащихся в столбце.

1   2   3   4   5   6   7   8   9   10   ...   15

Похожие:

Учебное пособие Омск • 2008 Федеральное агентство по образованию iconУчебное пособие омск 2008 федеральное агентство по образованию государственное образовательное учреждение высшего профессионального образования
Учебное пособие предназначено для студентов и аспирантов высших учебных заведений, специализирующихся в области физики конденсированного...
Учебное пособие Омск • 2008 Федеральное агентство по образованию iconУчебное пособие Омск 2009 министерство образования и науки российской федерации федеральное агентство по образованию
Пушнина Западной Сибири: лосновы товароведения и ранок: учебное пособие / О. В. Гончарова Омск: Издатель ип погорелова, 2009. – 362...
Учебное пособие Омск • 2008 Федеральное агентство по образованию iconУчебное пособие Тамбов 2008 федеральное агентство по образованию тамбовский государственный университет им. Г. Р. Державина эмпирическая социология учебное пособие для студентов, обучающихся по специальности
Белинская Д. В., кандидат социологических наук (Предисловие, Раздел Специфика социологического метода, Раздел Методы социологического...
Учебное пособие Омск • 2008 Федеральное агентство по образованию iconУчебное пособие Челябинск 2006 Министерство образования и науки Российской Федерации Федеральное агентство по образованию
Учебное пособие предназначено для студентов университета дневной и заочной форм обучения по специальности физическая культура
Учебное пособие Омск • 2008 Федеральное агентство по образованию iconУчебное пособие томск 2007 Федеральное агентство по образованию

Учебное пособие Омск • 2008 Федеральное агентство по образованию iconУчебное пособие 2010 Федеральное агентство по образованию Государственное образовательное учреждение высшего профессионального образования
Приемы программирования в среде visual basic for application: учебное пособие / Ф. И. Воробьева, Е. С. Воробьев. – Казань: Изд-во...
Учебное пособие Омск • 2008 Федеральное агентство по образованию iconУчебное пособие ч елябинск 2 006 Министерство образования и науки Российской Федерации Федеральное агентство по образованию Южно-Уральский государственный университет Кафедра «Основы медицинских знаний»
Учебное пособие предназначено для студентов университета дневной и заочной форм обучения по специальности «Физическая культура»
Учебное пособие Омск • 2008 Федеральное агентство по образованию iconУчебное пособие 2010 Федеральное агентство по образованию Государственное образовательное учреждение высшего профессионального образования
Интеллектуальная автоматика в курсовых и дипломных проектах: учебное пособие (Том 2)/ В. П. Ившин, М. Ю. Перухин, И. А. Дюдина, А....
Учебное пособие Омск • 2008 Федеральное агентство по образованию iconФедеральное агентство по образованию государственное образовательное учреждение высшего профессионального образования
Биохимия белков и ферментов : учеб метод пособие / С. Е. Синютина, С. В. Романцова; Федеральное агентство по образованию, гоувпо...
Учебное пособие Омск • 2008 Федеральное агентство по образованию iconУчебное пособие Архангельск Поморский университет
Федеральное агентство по образованию Государственное образовательное учреждение высшего профессионального образования
Разместите кнопку на своём сайте:
Библиотека


База данных защищена авторским правом ©lib.znate.ru 2014
обратиться к администрации
Библиотека
Главная страница