你必須知道的一些 SELECT 查詢這篇文章講述了一些最重要的查詢以及提供了一些範例。今天我們繼續這個主題,示範如何使用 BETWEEN 這個非常重要的運算子。
將數值限制為某個範圍
篩選查詢傳回列數的其中一種方法是將一個或多個欄位的數值限制為一個範圍。通常,這可以使用>=和<=運算子來完成。舉例說明,以下的查詢傳回 2005 年 7 月 5 日至 6 日期間的Sakila電影出租資訊:
SELECT
customer_list.`name`,
rental.rental_date,
film.title
FROM
customer_list
INNER JOIN rental ON customer_list.ID = rental.customer_id
INNER JOIN film ON rental.inventory_id = film.film_id
WHERE
rental_date >= '2005-07-05' AND rental_date <= '2005-07-06'
與上述範圍相同的一個更短且更易理解的限制方法是使用 BETWEEN 運算子。BETWEEN 運算子用於選取特定範圍內的數值。定義為 BETWEEN 範圍一部分的數值是包含的,即範圍中提到的起始值和結束值:
WHERE rental_date BETWEEN '2005-07-05' AND '2005-07-06'
在這兩種情況,結果都受限於特定的日期範圍:
name | rental_date | title |
---------------------------------------------------------------- | ||
JAIME NETTLES | 2005-07-05 22:49:24 | TEQUILA PAST |
PAMELA BAKER | 2005-07-05 22:56:33 | STAR OPERATION |
EDUARDO HIATT | 2005-07-05 22:59:53 | BRIDE INTRIGUE |
FERNANDO CHURCHILL | 2005-07-05 23:13:51 | BLADE POLISH |
CARMEN OWENS | 2005-07-05 23:25:54 | CANDLES GRAPES |
JOE GILLILAND | 2005-07-05 23:32:49 | TOURIST PELICAN |
APRIL BURNS | 2005-07-05 23:44:37 | WIZARD COLDBLOODED |
ERICA MATTHEWS | 2005-07-05 23:46:19 | JACKET FRISCO |
雖然 BETWEEN 運算子用於限制日期是很理想,但同樣適用於其他資料類型。例如進一步篩選上述資料,將結果限制為租金介於 2.99 和 4.99 之間:
SELECT
customer_list.`name`,
rental.rental_date,
film.title,
film.rental_rate
FROM
customer_list
INNER JOIN rental ON customer_list.ID = rental.customer_id
INNER JOIN film ON rental.inventory_id = film.film_id
WHERE
rental.rental_date BETWEEN '2005-07-05' AND '2005-07-06'
AND film.rental_rate BETWEEN 2.99 AND 4.99
name | rental_date | title | rental_rate |
---------------------------------------------------------------------------------- | |||
JAIME NETTLES | 2005-07-05 22:49:24 | TEQUILA PAST | 4.99 |
PAMELA BAKER | 2005-07-05 22:56:33 | STAR OPERATION | 2.99 |
CARMEN OWENS | 2005-07-05 23:25:54 | CANDLES GRAPES | 4.99 |
JOE GILLILAND | 2005-07-05 23:32:49 | TOURIST PELICAN | 4.99 |
APRIL BURNS | 2005-07-05 23:44:37 | WIZARD COLDBLOODED | 4.99 |
ERICA MATTHEWS | 2005-07-05 23:46:19 | JACKET FRISCO | 2.99 |
總結
今天的文章介紹了 BETWEEN 這個非常重要的運算子,以及使用Navicat Premium 作為資料庫用戶端的一些示範。Navicat 的自動完成程式碼和自訂的程式碼片段功能透過關鍵字建議和減少重複輸入相同的程式碼,令編碼更加快速。你可以免費試用 14 天進行評估。