Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  3 451

•  TDictionary Custom Sort  5 651

•  Fast Watermark Sources  5 414

•  3D Designer  7 871

•  Sik Screen Capture  5 712

•  Patch Maker  6 203

•  Айболит (remote control)  6 209

•  ListBox Drag & Drop  5 082

•  Доска для игры Реверси  94 126

•  Графические эффекты  6 379

•  Рисование по маске  5 432

•  Перетаскивание изображений  4 590

•  Canvas Drawing  4 977

•  Рисование Луны  4 705

•  Поворот изображения  4 253

•  Рисование стержней  2 996

•  Paint on Shape  2 225

•  Генератор кроссвордов  3 080

•  Головоломка Paletto  2 420

•  Теорема Монжа об окружностях  3 206

•  Пазл Numbrix  2 104

•  Заборы и коммивояжеры  2 745

•  Игра HIP  1 722

•  Игра Go (Го)  1 639

•  Симулятор лифта  1 963

•  Программа укладки плитки  1 690

•  Генератор лабиринта  2 127

•  Проверка числового ввода  1 815

•  HEX View  2 084

•  Физический маятник  1 814

 
скрыть


Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

SQL - сортировка вычисляемого поля



У молодого хакера спрашивают:
- Максим, ну что тебе нравится, кроме женщин и компьютеров?
- Как что? Девушки и калькуляторы.

Иногда схема данных требует, чтобы набор данных имел вычисляемый результат. В приложениях Delphi в случае использования SQL это возможно, но эта технология немного разнится в зависимости от используемого типа данных.

Для локального SQL, включая таблицы Paradox и dBASE, вычисляемому полю дают имя с использованием ключевого слова AS. При этом допускается ссылаться на такое поле для задания порядка сортировки с помощью ключевой фразы ORDER BY в SQL-запросе. Например, используя демонстрационную таблицу ITEMS.DB:

  SELECT I."PARTNO", I."QTY", (I."QTY" * 100) AS TOTAL
  FROM "ITEMS.DB" I
  ORDER BY TOTAL
В данном примере вычисляемому полю было присвоено имя TOTAL (временно, только для ссылки), после чего оно стало доступным в SQL-запросе для выражения ORDER BY.

Вышеуказанный метод не поддерживается в InterBase. Тем не менее, сортировать вычисляемые поля в таблицах InterBase (IB) или сервере Local InterBase Server все же возможно. Вместо использования имени вычисляемого поля, в выражении ORDER BY используется порядковое число, представляющее собой позицию вычисляемого поля в списке полей таблицы. Например, используя демонстрационную таблицу EMPLOYEE (расположенную в базе данных EMPLOYEE.GDB):

  SELECT EMP_NO, SALARY, (SALARY / 12) AS MONTHLY
  FROM EMPLOYEE
  ORDER BY 3 DESCENDING
В то время, как таблицы IB и LIBS используют второй метод, и не могут воспользоваться первым, оба метода доступны при работе с локальным SQL. К примеру, используя SQL-запрос для таблицы Paradox, и приспосабливая его для работы с относительной позицией вычисляемого поля, а не его именем:
  SELECT I."PARTNO", I."QTY", (I."QTY" * 100) AS TOTAL
  FROM "ITEMS.DB" I
  ORDER BY 3




Похожие по теме исходники

Конструктор тестов SQL

SQL Zapros

Сортировка методом Хоара

Сортировка списка

 

Линейная интерполяция функции

Интерполяция сплайнами




Copyright © 2004-2025 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте