Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SQL_Lektsii_original.doc
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
242 Кб
Скачать
☆

Речення order by

Речення ORDER BY є необов’язковим. Дане речення сортує записи, що отримані після виконання запиту за зростанням або спаданням указаних полів. Його необхідно вказувати для сортування результату запиту. За замовчуванням задано порядок сортування за зростанням

[ORDER BY {<назва поля>[ASC|DESC]} [,…]]

<назва поля> – поле, за яким відбувається сортування. ASC (DESC) – зареєстровані слово для розташування елементів у зростаючому (спадному) порядку.

Приклад. Виведемо на екран всю таблицю, яка відсортована у спаданні за віком студентів (табл. 2.10), а потім у зростанні за їх прізвищами.

SELECT * FROM Students ORDER BY Age DESC, Surname ASC;

Таблиця 10

Num

Surname

Name

Age

Speciality

4

Селань

Віктор

20

Математика

1

Крупик

Віктор

19

Інформатика

2

Прапій

Степан

19

Інформатика

3

Працків

Оксана

18

Інформатика

5

Ятрів

Олег

17

Інформатика

Операція join

Для завдання типу об’єднання у реченні FROM виконують операцію JOIN. Якщо в результат вибірки необхідно включити всі рядки з обох таблиць, що задовольняють умові вибірки, використовується операція INNER JOIN.

FROM <таблиця1> INNER JOIN <таблиця2> ON {<таблиця1>.<поле1>} <операція> {<таблиця2>.<поле2>}

де <таблиця1>, <таблиця2> – імена таблиць, записи яких підлягають об’єднанню. <поле1>, <поле2> – імена полів, що об’єднуються; якщо поля не є числовими, то повинні мати однаковий тип даних і вміщувати дані одного виду; поля можуть мати різні імена. <оператор> – будь-який оператор порівняння.

Операції JOIN можуть бути вкладеними.

SELECT <поля> FROM <таблиця1> INNER JOIN (<таблиця2> INNER JOIN [(] <таблиця3> [INNER JOIN [(] <таблицяX> [INNER JOIN…)] ON <таблиця3>.<поле3> <операція> <таблицяХ>.<полеХ>] ON <таблиця2>.<поле2> <операція> <таблиця3>.<поле3>) ON <таблиця1>.<поле1> <операція> <таблиця2>.<поле2>;

Для створення зовнішнього об’єднання використовують операції LEFT JOIN, RIGHT JOIN.

FROM <таблиця1> [ LEFT | RIGHT ] JOIN <таблиця2> ON <таблиця1>.<поле1> <операція> <таблиця2>.<поле2>

де <таблиця1>, <таблиця2> – імена таблиць, що підлягають об’єднанню. <поле1>, <поле2> – імена полів, що об’єднуються. <оператор> – будь-який оператор порівняння.

Операція LEFT JOIN використовується для створення лівого зовнішнього об’єднання, за якого всі записи з першої (лівої) таблиці включаються в динамічний набір, навіть якщо в другій (правій) таблиці немає відповідних до них записів. Якщо у другій таблиці, з якою виконується з’єднання, не має відповідних рядків, то замість значень її полів додається значення Null.

Операція RIGHT JOIN використовується для створення правого зовнішнього об’єднання, за якого всі записи з другої (правої) таблиці включаються в динамічний набір, навіть якщо в першій (лівій) таблиці немає відповідних до них записів. Якщо у першій таблиці, з якою виконується з’єднання, не має відповідних рядків, то замість значень її полів додається значення Null.

Операція LEFT JOIN або RIGHT JOIN можуть бути вкладені в операцію INNER JOIN, але не навпаки.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]