ОПИСАНИЕ УСЛОВИЯ ВЫБОРА ЗАПИСЕЙ

Выбор строк из таблиц базы данных с использованием условия. Выражение WHERE

Зачастую в выражении SELECT не требуется выводить все записи (строки) из таблицы, а только те которые удовлетворяют некоторому условию. Для этого в операторе SELECT используется выражение WHERE.

Рассмотрим выражение WHERE, а также принципы использования булевых операторов, которые применяются во время написания выражений. Данное выражение можно увидеть в большинстве инструкций SELECT, а также в других инструкциях, в том числе UPDATE и DELETE.

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

В самом простом выражении WHERE определяется точное соответствие значению. Рассмотрим пример, где требуется найти данные о преступнике с именем Govorov Ivan Ivanovich. Для этого нужно ввести следующую команду (рис. 4.1):

mysql> SELECT * FROM prestupnik WHERE

-> prestupnik name = "Govorov Ivan Ivanovich";

mysql> SELECT * FROM prestupnik WHERE prestupnik_name='Govorov Ivan Ivanovich'; +----------------+---------------+------------------------+

! gruppirovka_id ! prestupnik_id ! prestupnik_nane ! prestupnik_god_rozhdeniya

+----------------+---------------+------------------------+

! 21 2 ! Govorov Ivan Ivanovich ! 1968 !

1 row in set <0.00 sec>

Рис. 4.1. Простое выражение WHERE

MySQL вернет все строки, отвечающие нашему критерию поиска. В данном случае будет возвращена только одна строка со всеми ее столбцами.

Рассмотрим еще один пример. Предположим, что нам требуется определить название преступной группировки со значением gruppirovka_id, равным 4. Введите следующую команду (рис. 4.2).

mysql> SELECT gruppirovka_name FROM gruppirovka -> WHERE gruppirovka_id = 4;

! gruppirouka_name !

»-------------------+

! Matueeuskaya I

<-------------------+

L row in set <0.00 sec)

Рис. 4.2. Простое выражение столбца gruppirovka_пате

В этом примере выбран и столбец, и строка. Мы ввели имя столбца gruppirovka_name после ключевого слова SELECT вместе с WHERE gruppirovka_id = 4 (рис. 4.3).

Если значение соответствует больше чем одной строке, то результаты будут содержать все соответствия. Например, запросив имя преступника рожденного в 1977 году (prestupnik_god_rozhdeniya=1977), извлечем имена всех преступников, рожденных в 1977 году. Для этого введем команду:

mysql> SELECT prestupnik_name FROM prestupnik -> WHERE prestupnik_god_rozhdeniya=1977;

' prestupnik—name

+?

! Beloи Aleksandr Petrouich ! ! Petlyakou Maksim luanouich ! 4-

2 rows in set

Рис. 4.3. Результат простого выражения

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

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ ОРИГИНАЛ   След >