SQL WHERE: Difference between revisions
Line 22: | Line 22: | ||
* A string literal | * A string literal | ||
* A built-in function such as <code>CONCAT()</code> | * A built-in function such as <code>CONCAT()</code> | ||
* A subquery | * A [[SQL_SELECT#Subqueries_(Querying_a_Derived_Table|subquery]] | ||
* A list of expressions such as <code>('A', 'B', 'C')</code> | * A list of expressions such as <code>('A', 'B', 'C')</code> | ||
The operators used within conditions include: | |||
* Comparison operators: <code>=</code>, <code>!=</code>, <code><</code>, <code>></code>, <code><></code>, <code>LIKE</code>, <code>IN</code>, <code>BETWEEN</code>. | |||
* Arithmetic operators: <code>+</code>, <code>-</code>, <code>/</code>, <code>*</code> | |||
==<tt>NULL</tt> in Conditions== | ==<tt>NULL</tt> in Conditions== | ||
Also see: {{Internal|SQL#SQL_NULL|<tt>NULL</tt>}} | Also see: {{Internal|SQL#SQL_NULL|<tt>NULL</tt>}} |
Revision as of 02:07, 24 May 2024
Internal
TODO
TO PROCESS: https://learning.oreilly.com/library/view/learning-sql-3rd/9781492057604/ch04.html
Overview
The WHERE
clause is the mechanism for filtering out unwanted data from the result set. The WHERE
clause can be used with SELECT
, UPDATE
and DELETE
, but not with INSERT
. The WHERE
clause may contain an arbitrary number of filter conditions separated by AND
, OR
and NOT
operators, and optionally grouped together with parentheses.
FROM <filter_condition> AND|OR <filter_condition> ...
SELECT * FROM person WHERE person.name = 'Alice' AND (person.eye_color = 'blue' OR person.eye_color = 'black');
Filter Conditions
A condition is made up of one or more expressions, combined with one or more operators. An expression can be any of the following:
- A number
- A column in a table or a view
- A string literal
- A built-in function such as
CONCAT()
- A subquery
- A list of expressions such as
('A', 'B', 'C')
The operators used within conditions include:
- Comparison operators:
=
,!=
,<
,>
,<>
,LIKE
,IN
,BETWEEN
. - Arithmetic operators:
+
,-
,/
,*
NULL in Conditions
Also see:
Using Parentheses
If the WHERE
clause includes three or more conditions combined with AND
, OR
or NOT
, you should use parentheses to make your intent clear.