Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Uchebnoe_posobie_MySQL_4.doc
Скачиваний:
20
Добавлен:
02.04.2015
Размер:
7.78 Mб
Скачать
  1. Запросы с указанием критерия отбора данных

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

Оператор

Название

Описание

=

Равенство

Проверяет равенство двух значений

>

Больше

Проверяет, что левое значение больше правого

<

Меньше

Проверяет, что левое значение меньше правого

>=

Больше или равно

Проверяет, что левое значение не меньше правого

<=

Меньше или равно

Проверяет, что левое значение не больше правого

! = или <>

Не равно

Проверяет, что два значения не равны

IS NOT NULL

Проверяет, что в поле записано значение

IS NULL

Проверяет, что в поле отсутствует значение

BETWEEN

Величина между

Проверяет, что значение принадлежит указанному диапазону

IN

Значение содержится

Проверяет, что значение содержится в указанном множестве

NOT IN

Значение не содержится

Проверяет, что значение не содержится в указанном множестве

LIKE

Соответствие

Проверяет соответствие значения образцу

NOT LIKE

Не соответствие

Проверяет несоответствие значения образцу

Ниже рассмотрены несколько примеров использования предложения WHERE .

Узнаем, какого цвета имеются автомобили "Волга":

SELECT color FROM cars WHERE model = ' Volga';

Узнаем, когда выходил на работу водитель с учетным номером 1:

mysql>SELECT use_on FROM timetable WHERE driver_number = 1;

Определим номера всех автомобилей "Волга" желтого цвета:

mysql> SELECT reg_number FROM cars

-> WHERE model = 'Volga' AND color = 'yellow';

Оператор in определяет принадлежность значения поля заданному множеству значений. Например, чтобы определить номерные знаки автомобилей "Волга" и "Volkswagen", подайте команду

mysql> SELECT reg__number FROM cars WHERE model

IN ('Volga', 'Volkswagen');

Оператор between задает границы, в которые должно попасть значение, чтобы условие запроса выполнялось. За словом BETWEEN пишется начальное значение, затем ключевое слово and и конечное значение. Например, выясним, кто из водителей устроился на работу в период с 1 января 2001 г. по 1 января 2004 г.:

mysql> SELECT family_name FROM drivers

-> WHERE startdate BETWEEN '2001-01-01' AND '2004-01-01';

Оператор LIKE использует простой механизм соответствия . Образец может состоять из обычного текста и знака процента (%) для указания совпадения с произвольной текстовой строкой. В MySQL соответствия не чувствительны к регистру. Например, шаблон ' Fed%’ соответствует любой строке, которая начинается с ' Fed' или с ‘fed’.

mysql>SELECT * FROM drivers WHERE name LIKE 'Fed%;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]