Предложение WHERE используется для задания условий при выборке данных из одной таблицы или путем объединения с несколькими таблицами. Если данное условие выполняется, то он возвращает только определенное значение из таблицы. Вы должны использовать предложение WHERE для фильтрации записей и выборку только необходимых записей.
Предложение WHERE используется не только в операторе SELECT, но также используется в заявлениях UPDATE, DELETE и т.д., которые мы рассмотрим в последующих главах.
Базовый синтаксис SELECT с предложением WHERE показано ниже.
SELECT column1, column2, columnN FROM table_name WHERE [condition]
Вы можете задать условие с помощью операторов сравнения или логических операторов, такие как >, <, =, LIKE, NOT и т.д. Следующие примеры бы даны показать ясность.
Рассмотрим таблицу CUSTOMERS, имеющих следующие записи:
+----+----------+-----+-----------+----------+ | ID | NAME | AGE | ADDRESS | SALARY | +----+----------+-----+-----------+----------+ | 1 | Maxim | 35 | Moscow | 21000.00 | | 2 | AndreyEx | 38 | Krasnodar | 55500.00 | | 3 | Oleg | 33 | Rostov | 34000.00 | | 4 | Masha | 35 | Moscow | 31500.00 | | 5 | Ruslan | 34 | Omsk | 43000.00 | | 6 | Dima | 32 | SP | 45000.00 | | 7 | Roma | 34 | SP | 10000.00 | +----+----------+-----+-----------+----------+
Следующий код является примером, который будет получать поля идентификатора, имени и зарплату из таблицы CUSTOMERS, где зарплата больше, чем 33000:
SQL> SELECT ID, NAME, SALARY FROM CUSTOMERS WHERE SALARY > 33000;
Это выведет следующий результат —
+----+----------+----------+ | ID | NAME | SALARY | +----+----------+----------+ | 2 | AndreyEx | 55500.00 | | 3 | Oleg | 34000.00 | | 5 | Ruslan | 43000.00 | | 6 | Dima | 45000.00 | +----+----------+----------+
Следующий запрос является примером, который получит идентификатор, имя и зарплату из таблицы CUSTOMERS для клиента с именем AndreyEx.
Здесь важно отметить, что все строки должны быть приведены в одинарные кавычки ( «»). Принимая во внимание, числовые значения должны быть даны без цитаты, как в приведенном выше примере.
SQL> SELECT ID, NAME, SALARY FROM CUSTOMERS WHERE NAME = 'AndreyEx';
Это произведет следующий результат:
+----+----------+----------+ | ID | NAME | SALARY | +----+----------+----------+ | 5 | AndreyEx | 55000.00 | +----+----------+----------+