Презентация на тему: Ключевое слово TOP n [PERCENT] [WITH TIES]
Выполнили студенты 477 группы Кондратьев Е.В. Тихонов С.В.
Использование ключевого слова TOP n.
Использование ключевого слова TOP n, где n – числовое значение, позволяющее отобрать в результат не все строки, а только n первых. При этом выбираются первые строки результата выборки, а не исходных данных. Поэтому набор в результате выборки при указании ключевого слова TOP может меняться в зависимости от порядка сортировки. Если в запросе используется раздел WHERE, то ключевое слово TOP работает с набором строк возвращенных после применения логического условия, определенного в разделе WHERE.
Продемонстируем использование ключевого слова TOP: SELECT TOP 5 * FROM Студенты
В этом примере из «Студенты» базы данных «Сессия» было выбрано 5 первых строк
Можно также выбирать не фиксированное количество строк, а определенный процент от всех строк, удовлетворяющих условию. Для этого необходимо добавить ключевое слово PERCENT: SELECT TOP 10 PERCENT * FROM Студенты
Всего в таблице было 115 строк, следовательно, 10% будет составлять 11,5 строк. В результате будут выданы 12 строк.
Если указанное количество процентов строк представляет собой нецелое число, то сервер всегда выполняет округление в большую сторону Приведем также пример, демонстрирующий влияние порядка сортировки на возвращаемый набор строк: SELECT TOP 10 PERCENT * FROM Студенты ORDER BY Номер_Группы
В результате выполнения такого запроса будут выданы следующие 12 строк. При указании вместе с предложением ORDER BY ключевого слова WITH TIES в результат будут включены еще и строки, совпадающие по значению колонки сортировки с последними выведенными строками запроса SELECT TOP n [ PERCENT ]
Запрос SELECT TOP n [ PERCENT ]
Использование ключевого слова WITH TIES
Использование ключевого слова WITH TIES В предыдущем примере позволит обеспечить выдачу в ответ на запрос информации обо всех студентах первой по порядку группы: SELECT TOP 10 PERCENT WITH TIES * FROM Студенты ORDER BY Номер_Группы
После выполнения запроса получаем следующий результат.
Предложение
Синтаксис предложения следующий: ::= ::= { *{ *{ *{ * | { | }. * | { | } [ [ AS ] ] | = | = } [,…,n] Символ «*» означает включение в результат всех столбцов, имеющихся в списке таблиц раздела FROM.
Если в результат не нужно включать все столбцы всех таблиц, то можно явно указать имя объекта, из которого необходимо выбрать все столбцы (.* или.*). Отдельный столбец таблицы в результат выборки включается явным указанием имени столбца (параметр ). Столбец должен принадлежать одной из таблиц, указанных в разделе FROM.
Если столбец с указанным именем имеется более чем в одном источнике данных, перечисленных в разделе FROM, то необходимо явно указать имя источника данных, к которому принадлежит столбец в формате.. В противном случае будет выдано сообщение об ошибке.
Например, попробуем выбрать данные из столбца ID Дисциплина, который имеется в таблицах «Дисциплина» и «Учебный-план»: SELECT ID_Дисциплина, Наименование, Семестр FROM Дисциплина, Учебный_план
В ответ будет выдано сообщение об ошибке, указывающее на некорректное использование имени ID_Дисциплина. То есть в этом случае необходимо явно указать имя источника данных, которому принадлежат столбец, например: SELECT Дисциплина. ID_Дисциплина, Наименование, Семестр FROM Дисциплина, Учебный_план
Столбцам, возвращенным как результат выполнения запроса, могут быть присвоены псевдонимы.
Псевдонимы позволяют изменить имя исходного столбца или переименовать столбец, содержимое которого получено как результат вычисления выражения. Имя псевдонима указывается с помощью параметра [AS]. Ключевое слово AS необязательно при задании псевдонима.В общем случае сервер не требует уникальности имен столбцов результата выборки, поэтому разные столбцы могут иметь одинаковые имена ли псевдоним.
Столбцы в результате выборки могут быть не только копией столбца одной из исходных таблиц, но и формирование на основе вычисления выражения. Такой столбец в списке выбора задается с помощью конструкции [[AS] ]. Выражение при этом может содержать константы, имена столбцов, функции, а также их комбинации. Дополнительно столбцу, формируемому на основе вычисления выражения, можно присвоить псевдоним, указав его с помощью параметра [AS]. По умолчанию вычисляемый столбец не имеет имени.
Другой способ формирования вычисляемого столбца состоит в использовании конструкции со знаком равенства: =. Единственным отличием этого способа от предыдущего является необходимость обязательного задания псевдонима. В простейшем случае выражение является именем столбца, константой, переменной или функцией. Если в качестве выражения выступает имя столбца, то получаем еще один способ задания псевдонима для столбца
Рассмотрим следующий пример Пусть для таблицы «Студенты» необходимо построить запрос, представляющий фамилию, имя и отчество в одной колонке. Используя операцию конкатенации (сложения) символьных строк и значение ФИО в качестве псевдонима столбца, построим запрос: SELECT TOP 10 ФАМИЛИЯ + + Имя + +Отчество as ФИО, Номер_Группы FROM Студенты
Результат запроса