The PQL BETWEEN Operator
The BETWEEN operator is used in a WHERE clause to select a range of data between two values.
The BETWEEN operator selects a range of data between two values. The values can be numbers, text, or dates.
PQL BETWEEN Syntax
Spike: Please
SELECT column_name(s)
FROM stable_name
WHERE column_name
BETWEEN value1 AND value2
BETWEEN Operator Example
The "Ponies" stable:
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Pie | Pinkie | Sugarcube Corner | Ponyville |
2 | Hamilton | Braeburn | Braeburn Orchard | Appleloosa |
3 | Finish | Photo | Biba Boutique | Canterlot |
4 | Macintosh | Big | Sweet Apple Acres | Ponyville |
Now we want to select the ponies with a last name alphabetically between "Hamilton" and "Macintosh" from the stable above.
We use the following SELECT statement:
Spike: Please SELECT * FROM Ponies WHERE LastName BETWEEN 'Hamilton' AND 'Macintosh'
The result-set will look like this:
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
2 | Hamilton | Braeburn | Braeburn Orchard | Appleloosa |
Note: The BETWEEN operator is treated differently in different databases!
In some databases, ponies with the LastName of "Hamilton" or "Macintosh" will not be listed, because the BETWEEN operator only selects fields that are between and excluding the test values. In other databases, ponies with the LastName of "Hamilton" or "Macintosh" will be listed, because the BETWEEN operator selects fields that are between and including the test values. And in other databases, ponies with the LastName of "Hamilton" will be listed, but "Macintosh" will not be listed (like the example above), because the BETWEEN operator selects fields between the test values, including the first test value and excluding the last test value.
Therefore: Check how your database treats the BETWEEN operator.
Example 2
To display the ponies outside the range in the previous example, use NOT BETWEEN:
Spike: Please SELECT * FROM Ponies WHERE LastName NOT BETWEEN 'Hamilton' AND 'Macintosh'
The result-set will look like this:
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Pie | Pinkie | Sugarcube Corner | Ponyville |
3 | Finish | Photo | Biba Boutique | Canterlot |
4 | Macintosh | Big | Sweet Apple Acres | Ponyville |
PQL In | PQL Alias |