Хелен Борри - Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ

Тут можно читать онлайн Хелен Борри - Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство БХВ-Петербург, год 2006. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ
  • Автор:
  • Жанр:
  • Издательство:
    БХВ-Петербург
  • Год:
    2006
  • Город:
    Санкт-Петербург
  • ISBN:
    5-94157-609-9
  • Рейтинг:
    4/5. Голосов: 81
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Хелен Борри - Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ краткое содержание

Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - описание и краткое содержание, автор Хелен Борри, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Рассмотрены вопросы, необходимые разработчику для создания клиент-серверных приложений с использованием СУБД Firebird, явившейся развитием СУБД Borland Interbase 6. Содержится обзор концепций и моделей архитектуры клиент/сервер, а также практические рекомендации по работе с клиентскими библиотеками Firebird. Детально описаны особенности типов данных SQL, язык манипулирования данными (Data Manipulation Language, DML), а также синтаксис и операторы языка определения данных ( Data Definition Language, DDL). Большое внимание уделено описанию транзакций и приведены советы по их использованию при разработке приложений. Описано программирование на стороне клиента и сервера написание триггеров и хранимых процедур, создание и использование событий базы данных, обработка ошибок в коде на сервере и многое другое. Материал сопровождается многочисленными примерами, советами и практическими рекомендациями.

Для разработчиков баз данных

Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - читать онлайн бесплатно полную версию (весь текст целиком)

Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - читать книгу онлайн бесплатно, автор Хелен Борри
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

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

Предложение ORDER BY

Предложение ORDER BY используется для сортировки выходного набора запроса SELECT, оно также допустимо для любого оператора SELECT, который способен отыскивать множество строк для вывода. Оно помещается после всех других предложений, за исключением предложения FOR UPDATE (если присутствует) или предложения INTO (в хранимой процедуре).

Общая форма синтаксиса предложения ORDER BY:

. . .

ORDER BY <���список-элементов-сортировки>

<���список-элементов-сортировки> = <���элемент-сортировки>

[, <���элемент-сортировки>]

<���элемент-сортировки> = <���столбец> | <���выражение> | <���номер-позиции>

[COLLATE <���порядок-сортировки>]

ASC[ENDING] | DESC[ENDING]

[NULLS LAST [ NULLS FIRST]

Элементы сортировки

Разделенный запятыми <���список-элементов-сортировки> определяет вертикальный порядок сортировки строк. Порядок сортировки по каждому элементу сортировки может быть возрастающим (ASC) или убывающим (DESC). Возрастающий порядок является порядком по умолчанию и не обязательно должен быть указан.

Firebird 1.5 поддерживает размещение значений NULL, если присутствуют, в элементе сортировки. Значение по умолчанию, NULLS LAST, означает, что строки NULL будут помещены в конец списка. Задавайте NULLS FIRST для размещения NULL перед всеми другими значениями.

Когда присутствует несколько элементов сортировки, то горизонтальный порядок элементов в предложении является значимым - сортировка выполняется слева направо.

Столбцы

Элементами сортировки обычно являются столбцы. Индексированные столбцы сортируются много быстрее, чем неиндексированные. Если сортировка использует множество столбцов в непрерывной последовательности слева направо, то составной индекс, созданный из таких сортируемых элементов в той же последовательности слева направо с соответствующим направлением сортировки (ASC/DESC), может резко повысить скорость сортировки.

В запросах UNION и GROUP BY столбец, используемый для сортировки, должен присутствовать в выходном списке. В других запросах невыводимые столбцы и (в версии 1.5) выражения, содержащие невыводимые столбцы, допустимы для критерия упорядочения.

Оператор в примере 23.1 показывает сортировку по столбцам в простейшей форме.

Пример 23.1. Простейшая сортировка по столбцам

SELECT COLA, COLB, COLC, COLD

FROM TABLEA

ORDER BY COLA, COLD;

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

При спецификации упорядоченного набора, который использует соединение или коррелированные подзапросы, вы должны указывать полные идентификаторы для всех элементов сортировки, являющихся столбцами базы данных, или обращаться к столбцам базы данных, используя идентификаторы таблиц или алиасы, которые были заданы в предложениях FROM и JOIN, как показано в примере 23.2.

Пример 23.2, Алиасы таблиц в предложении упорядочения

SELECT A.COLA, A.COLB, B.COL2, B.C0L3

FROM TABLEA А

JOIN TABLEB В ON A.COLA = B.COL1

WHERE A.COLX = 'Sold'

ORDER BY A.COLA, B.COL3;

Выражения

В Firebird 1.5 и выше правильные выражения допустимы в качестве элементов сортировки, даже если выражение не выводится в виде выходного столбца. Вы можете сортировать наборы по выражениям внутренних и внешних функций или скалярным значениям коррелированных подзапросов (пример 23.3). Если столбец выражения, по которому вы хотите выполнять сортировку, присутствует в выходном списке, вы не можете использовать его имя алиаса в качестве элемента упорядочения. или повторите выражение в предложении ORDER BY, или используйте порядковый номер столбца (см. разд. "Порядковые номера").

Пример 23.3. Упорядочение по полю выражения

SELECT EMP_NO || '-' || SUBSTRING (LAST_NAME FROM 1 FOR 3) AS NAMECODE

FROM EMPLOYEE

ORDER BY EMP_NO || '-' || SUBSTRING (LAST_NAME FROM 1 FOR 3);

Альтернативный способ - замена выражения в предложении упорядочения на порядковый номер поля выражения:

SELECT EMP_NO || '-' || SUBSTRING (LAST_NAME FROM 1 FOR 3) AS NAMECODE

FROM EMPLOYEE

ORDER BY 1;

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

ORDER BY.

Сортировка по выражениям процедур или функций

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

. . .

ORDER BY CAST (SALES_DATE AS VARCHAR(24))

Строки будут упорядочены в алфавитно-цифровой последовательности символов без соответствия датам, с которыми оперирует это выражение.

! ! !

ВНИМАНИЕ! При использовании выражений в качестве критериев упорядочения помните о значительном расходовании ресурсов на сервере при дублировании вычисления выражения для каждой найденной строки. Влияние этого будет в лучшем случае непредсказуемым. Умеренно используйте в этом типе операции количество наборов.

. ! .

Порядковые номера

Особый вид выражения, который может быть задан в качестве критерия сортировки, является порядковым номером в списке выходных столбцов. Порядковый номер является позицией столбца в выходном списке, подсчитываемой слева направо, начиная с единицы. В примере 23.4 снова используется простой запрос из примера 23.1, где используются порядковые номера вместо идентификаторов столбцов.

Пример 23.4. Подстановка порядковых номеров вместо имен столбцов

SELECT COLA, COLB, COLC, COLD

FROM TABLEA

ORDER BY 1, 4;

Предложение упорядочения для сортировки выхода запроса объединения (union) может использовать только порядковые номера для ссылки на столбцы упорядочивания, как показано в примере 23.5.

Пример 23.5. Упорядочивание наборов UNION

SELECT

T.FIRST_NAME, T.LAST_NAME, 'YES' AS "TEAM LEADER?"

FROM EMPLOYEE T

WHERE EXISTS(SELECT 1 FROM PROJECT P1

WHERE PI.TEAM_LEADER = T.EMP_NO)

UNION

SELECT

E.FIRST_NAME, E.LAST_NAME, 'NO ' AS "TEAM LEADER?"

FROM EMPLOYEE E

WHERE NOT EXISTS(SELECT 1 FROM PROJECT P2

WHERE P2 .TEAM_LEADER = E.EMP_NO)

ORDER BY 2, 1;

В версии 1.0.x упорядочивание по порядковым номерам является единственным способом использования выражений в качестве критерия сортировки, а столбцы, полученные из выражений, должны быть представлены в спецификации вывода (см. пример 23.6). В версии 1.5 у вас есть вариант использования выражения в качестве элемента сортировки без включения элемента выражения в выходной набор, как показано в примере 23.7.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Хелен Борри читать все книги автора по порядку

Хелен Борри - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ отзывы


Отзывы читателей о книге Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ, автор: Хелен Борри. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x