Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
bd lections / DB_l07.ppt
Скачиваний:
5
Добавлен:
27.03.2016
Размер:
628.22 Кб
Скачать

Использование раздела WHERE для связывания таблиц

SELECT Наименование, Семестр, Количество_часов FROM Учебный_план INNER JOIN Дисциплины

ON Учебный_план.ID_Дисциплина = Дисциплины.ID_Дисциплина WHERE (Количество_часов > 60) AND (Семестр = 1)

SELECT Наименование, Семестр, Количество_часов FROM Учебный_план, Дисциплины

WHERE (Учебный_план.ID_Дисциплина = Дисциплины.ID_Дисциплина) AND (Количество_часов > 60) AND (Семестр = 1)

LEFT OUTER JOIN

*=

RIGHT OUTER JOIN

=*

Раздел GROUP BY

GROUP BY [ALL] <условие_группировки> [,...,n]

AVG() - вычисляет среднее значение для указанного столбцаCOUNT() - подсчитывает количество строк в группе (при

выполнении группировки) или количество строк результата запросаМАХ() - возвращает максимальное значение в указанном диапазоне

MIN() - возвращает минимальное значение в указанном диапазоне

SUM() - выполняет обычное суммирование значений в казанном диапазоне

AVG

ф

у

н

к

ц

и

я

COUNT

ф

у

н

к

ц

и

я

МАХ MIN

ф

у

н

к

ц

и

я

SUM

ф

у

н

к

ц

и

я

Примеры запросов с группировкой

SELECT Семестр, SUM(Количество_часов) AS 'Нагрузка' FROM [Учебный_план]

GROUP BY Семестр

SELECT Семестр, COUNT(*) AS 'Экзамены'

FROM [Учебный_план]

WHERE Отчетность = 'э'

GROUP BY Семестр

Ключевое слово ALL в разделе GROUP BY

SELECT Семестр, COUNT(*) AS 'Количество часов > 60'

FROM [Учебный_план] WHERE Количество_часов > 60 GROUP BY Семестр

SELECT Семестр, COUNT(*) AS 'Количество часов > 60'

FROM [Учебный_план] WHERE Количество_часов > 60 GROUP BY ALL Семестр

Раздел COMPUTE

COMPUTE <Функция_агрегирования> (<столбец_агрегирования>)}[,...,

n]

SELECT Наименование,[ BY <столбецСеместр, Количество_группировки>часов FROM[,...,nУчебный] ] _план, Дисциплины

WHERE (Учебный_план.ID_Дисциплина = Дисциплины.ID_Дисциплина) AND

(Семестр = 2) COMPUTE SUM

Использование команды SELECT...INTO

INTO <имя_новой_таблицы>

SELECT {<имя_столбца> [[AS] <псевдоним_столбца>] [, ...,

n] }

INTO <имя_новой_таблицы>

FROM {<имя_исходной_таблицы> [,..., n]}

SELECT ID_Студент, Адрес, Телефон

INTO Контакты

FROM Студенты

Соседние файлы в папке bd lections