SELECT kod, NAME, CREDITLIMIT
FROM Table3
WHERE CITY=“Ставрополь”
ORDER BY CREDITLIMIT DESC
В выборках без указания критерия упорядочивания данных результирующая таблица будет упорядочена в соответствии с внутренними алгоритмами их осуществления. Их примера 3 следует, что результат выборки может быть организован в определенной последовательности. Упорядочение данных в выборке может осуществляться по любому полю результирующей таблицы:
имя поля[упорядочение]
[,имя поля [упорядочение]] ...,
где аргумент «упорядочение» может принимать значение ASC(возрастание) или DESC (убывание). По умолчанию устанавливается значение ASC. В качестве аргументов имя поля могут использоваться только поля результирующей таблицы. Поэтому недопустима следующая конструкция:
SELECT kod, NAME, CREDITLIMIT
FROM Table3
ORDER BY CITY
Для идентификации полей, по которым осуществляется упорядочивание, можно использовать не только наименования полей результирующей таблицы, но и их номера (номер поля указывает порядковую позицию данного поля в результирующей таблице запроса). Благодаря этому можно упорядочить результат на основе вычисляемых полей, которые не обладают именами. Например, результатом выполнения запроса:
SELECT Kod1, UNITPRICE * (1 + 0,18)
FROM Товары
ORDER BY 2
будет являться результирующая таблица, во второй столбец которой будет помещена информация о стоимости товаров с учетом НДС. Записи в выборке будут упорядочены по второму столбцу.
Выборка с использованием оператора BETWEEN
Для организации выборки информации из базы данных, принадлежащей некоторому диапазону, в SQL-запросах используются операторы:
«>(Больше)»; «<(Меньше)»иBetween (Между). Выбор каждого из этих операторов осуществляется в окне мастера запросов из списка Criteria (Критерий), расположенного вовкладке Filter (Фильтр).Операторы
«>(Больше)» и «<(Меньше)» используются в том случае, если задана только нижняя или верхняя граница диапазона, a оператор Between (Между) – если известны обе границы диапазона.
С помощью SQL-запроса, набранного в командном окне,
SELECT kod, NAME, UNITPRICE
FROM Table4
WHERE UNITPRICE BETWEEN 20000 AND 100000
на экран будет выведена таблица, содержащая сведения о товарах,стоимость которых (UNITPRICE) находится в диапазоне от 20000 до 100000 включительно. Оператор BETWEEN возвращает истинные значения и для граничных точек.
Кроме того, при организации выборки из таблицы значений, не принадлежащих некоторому диапазону, может быть использовано условие NOT BETWEEN (не принадлежит диапазону между величинами), например:
SELECT kod, NAME, UNITPRICE
FROM Table4
WHERE UNITPRICE NOT BETWEEN 20000 AND 100000
Выборка с использованием оператора IN (принадлежит)
СУБД Visual FoxPro позволяет при создании запросов формировать несколько условий. В том случае, если все задаваемые условия накладываются на одно поле, их можно разместить в одной строке. Для этих целей используется оператор IN (принадлежит).
В частности, результатом выполнения SQL-запроса, приведенного ниже
SELECT kod, NAME, UNITPRICE
FROM Table4
WHERE UNITPRICE IN (100000, 200000, 500000)
является таблица, содержащая информацию о товарах, цена которых равна 100000, 200000 или 500000.
Оператор IN является краткой записью условия, представляющего собой последовательность отдельных сравнений, соединенных между операторами OR (или). Предыдущая конструкция SELECT эквивалентна следующей конструкции:
SELECT kod, NAME, UNITPRICE
FROM Table4
WHERE UNITPRICE=100000
OR UNITPRICE=200000
OR UNITPRICE=500000
Как и в случае с оператором BETWEEN можно также использовать конструкцию NOT IN (не принадлежит), например:
SELECT kod, NAME, UNITPRICE
FROM Table4
WHERE UNITPRICE NOT IN (100000, 200000, 500000)
Выборка с использованием шаблонов
Использование шаблонов языка SQL расширяет возможности выборки информации из базы данных, для которой пользователь не помнит точные значения полей или названия полей длинные и пользователь хочет сократить время их набора. Например, с помощью запроса
SELECT kod, NAME, UNITPRICE
FROM Table4
WHERE NAME LIKE “T%”
пользователь может выбрать из базы данных все товары, наименование которых начинается с буквы “Т”( таблица 4).
Таблица 4 – результат выборки по шаблону
kod | NAME | UNITPRICE |
Toshiba 1200 | 600.00 | |
Turbo Pascal | 200.00 |
Шаблоны в языке SQL описываются с помощью оператора LIKE, который может быть представлен в виде: