MySQL - Between 運算子:初學者指南
您好,有志於數據庫的愛好者們!今天,我們將踏上一段令人興奮的旅程,進入 MySQL 的世界,特別專注於 BETWEEN 運算子。別擔心您是編程新手;我將成為您的友好指南,逐步解釋一切。那麼,讓我們一起來探索吧!
BETWEEN 運算子是什麼?
想像您正在整理書架。您想找到所有在2010年至2020年間出版的書籍。這正是 MySQL 中的 BETWEEN 運算子幫助我們做到的——它允許我們選擇給定範圍內的值。
基本語法
SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;
讓我們分解一下:
-
SELECT
:這就像是說 "我想看到..." -
column_name(s)
:這是您想要看到的具體信息 -
FROM table_name
:這是信息存放的地方 -
WHERE
:這是我們設置條件的語句 -
BETWEEN value1 AND value2
:這是我們的範圍
MySQL BETWEEN 運算子實戰
假設我們有一個名為 books
的表,其中包含 id
、title
、author
和 publication_year
欄位。以下是我們如何使用 BETWEEN:
SELECT title, author, publication_year
FROM books
WHERE publication_year BETWEEN 2010 AND 2020;
這個查詢將顯示所有在2010年至2020年間出版的書籍,包括這兩個年份。這就像是在問,"讓我看從2010年到2020年(包括)的所有書籍。"
BETWEEN 與日期
BETWEEN 也非常適合用於日期!假設我們有一個名為 orders
的表:
SELECT order_id, customer_name, order_date
FROM orders
WHERE order_date BETWEEN '2023-01-01' AND '2023-12-31';
這將顯示所有在2023年下的訂單。很棒吧?
MySQL BETWEEN 與 IN 運算子
現在,讓我們來點刺激的。如果我們只想找到在2010年至2020年間出版,但僅限於某些作者的書籍呢?這就是我們將 BETWEEN 與 IN 結合使用的地方:
SELECT title, author, publication_year
FROM books
WHERE publication_year BETWEEN 2010 AND 2020
AND author IN ('J.K. Rowling', 'George R.R. Martin', 'Stephen King');
這個查詢就像是在說,"讓我看2010年到2020年間的書籍,但只有這些特定作者的書。"
MySQL BETWEEN 與 UPDATE 說明
有時候,我們不只是想查看數據——我們還想改變它。假設我們想給價格在50美元到100美元之間的所有產品提供10%的折扣:
UPDATE products
SET price = price * 0.9
WHERE price BETWEEN 50 AND 100;
這個查詢更新價格,對我們指定範圍內的產品應用10%的折扣。
BETWEEN 運算子與 DELETE 說明
BETWEEN 運算子還可以用於我們想要刪除數據時。想像我們想刪除2023年第一季度的所有訂單:
DELETE FROM orders
WHERE order_date BETWEEN '2023-01-01' AND '2023-03-31';
這將刪除2023年前三个月的所有訂單。使用 DELETE 說明時要小心——運行前一定要複查!
MySQL NOT BETWEEN 運算子
有時候,我們想要特定範圍之外的所有東西。這就是 NOT BETWEEN 派上用場的地方:
SELECT title, author, publication_year
FROM books
WHERE publication_year NOT BETWEEN 2010 AND 2020;
這個查詢顯示所有在2010年之前或2020年之後出版的書籍。
NOT BETWEEN 運算子與 IN 運算子
我們可以將 NOT BETWEEN 與 IN 結合起來進行更精確的查詢:
SELECT product_name, price
FROM products
WHERE price NOT BETWEEN 50 AND 100
AND category IN ('Electronics', 'Appliances');
這個查詢找到在電子或家電類別中,價格低於50美元或高於100美元的產品。
在客戶端程序中使用 BETWEEN 運算子
當在客戶端程序(如 PHP 腳本)中使用 BETWEEN 時,您可能會這樣做:
<?php
$min_price = 50;
$max_price = 100;
$query = "SELECT product_name, price FROM products WHERE price BETWEEN ? AND ?";
$stmt = $conn->prepare($query);
$stmt->bind_param("dd", $min_price, $max_price);
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
echo $row['product_name'] . ": $" . $row['price'] . "<br>";
}
?>
這個 PHP 腳本準備了一個帶有占位符的查詢,綁定了值,執行了查詢,然後顯示結果。
結論
好了,各位!我們已經一起穿越了 MySQL 中 BETWEEN 運算子的世界。從基本的選擇到更新和刪除,我們看到了這個小巧的運算子是多麼的多功能。記住,熟練是通過練習而來的,所以不要害怕嘗試您自己的查詢。
這裡是一個我們所涵蓋方法的快速參考表:
方法 | 描述 |
---|---|
BETWEEN | 選擇給定範圍內的值 |
BETWEEN 與 IN | 結合範圍和特定值選擇 |
BETWEEN 與 UPDATE | 更新特定範圍內的記錄 |
BETWEEN 與 DELETE | 刪除特定範圍內的記錄 |
NOT BETWEEN | 選擇給定範圍之外的值 |
NOT BETWEEN 與 IN | 結合排除範圍與特定值選擇 |
愉快地查詢,願您的數據庫總是井然有序且效率高!
Credits: Image by storyset