Delphi | Сети | ПК | Маршрутизаторы | Моделирование | Протоколы | Экспертные системы | Удаленный доступ | Доменные имена
Аплеты | SQL | Надежность | Задачи | Информационные процессы | JAVA | Отказы изделия | Расчет надежности показателей | Инфсис

Основные понятия и способы применения SQL - в примерах и задачах

SQL язык запросов к реляционным базам данных Учебник

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

Часто при запросе информации необходимо осуществлять соединение таблицы с ее же копией. Например, это требуется в случае, когда нужно найти фамилии студентов, имеющих одинаковые имена. При соединении таблицы с ее же копией вводят псевдонимы (алиасы) таблицы. Запрос для поиска фамилий студентов, имеющих одинаковые имена, выглядит следующим образом:

SELECT FIRST.SURNAME, SECOND.SURNAME FROM STUDENT FIRST, STUDENT SECOND WHERE FIRST.NAME = SECOND.NAME

В этом запросе введены два псевдонима для одной таблицы STUDENT, что позволяет корректно задать выражение, связываю­щее две копии таблицы. Чтобы исключить повторения строк в выводимом результате запроса из-за повторного сравнения од­ной и той же пары студентов, необходимо задать порядок следо­вания для двух значений так, чтобы одно значение было мень­ше, чем другое, что делает предикат асимметричным.

{,, SELECT FIRST. SURNAME, SECOND. SURNAME

fl FROM STUDENT FIRST, STUDENT SECOND

4

;! WHERE FIRST.NAME = SECOND.NAME

AND FIRST.SURNAME < SECOND.SURNAME

Упражнения

Написать запрос, выполняющий вывод списка всех пар фамилий студентов, проживающих в одном городе. При этом не включать в список комбинации фамилий студентов самих с собой (то есть комбинацию типа «Иванов-Иванов») и комбинации фамилий студентов, отличающиеся порядком следования (то есть включать одну из двух комбинаций типа «Иванов-Петров» и «Петров-Ива­ нов») .

Написать запрос, выполняющий вывод списка всех пар названий университетов, расположенных в одном городе, не включая в спи­ сок комбинации названий университетов самих с собой и пары на­ званий университетов, отличающиеся порядком следования.

Написать запрос, который позволяет получить данные о названиях университетов и городов, в которых они расположены, с рейтин­ гом, равным или превышающим рейтинг ВГУ.

Математический анализ, лекции по физике Компьютерные сети