SQL - SELECT 查詢:初學者指南

你好,有志於學習SQL的熱情者!我很興奮能成為您進入SQL SELECT查詢世界的引路人。作為一個教學SQL超過十年的老師,我可以向您保證,精通SELECT語句就像是打開了數據可能性的寶藏箱。那麼,我們就來深入了解一下吧!

SQL - Select Query

SQL SELECT 語句

SELECT語句是什麼?

SELECT語句是SQL的核心。我們用它從數據庫中檢索數據,相信我,你會經常使用它的!把它當作是一種禮貌的方式向數據庫請求,“嘿,你能給我顯示一些信息嗎?”

基本語法

這裡是最基本的SELECT語句形式:

SELECT column1, column2, ...
FROM table_name;

讓我們分解一下:

  • SELECT:這是我們的魔法詞,告訴數據庫我們想要檢索數據。
  • column1, column2, ...:這些是我們想要看到的特定列。
  • FROM:這個關鍵字引出了我們正在查詢的表。
  • table_name:這是我們數據所在的表的名稱。

範例1:選擇所有列

SELECT *
FROM employees;

這個查詢說,“從employees表中顯示一切。”星號(*)是一個萬用字符,表示“所有列”。

範例2:選擇特定列

SELECT first_name, last_name, email
FROM employees;

這個查詢客氣地請求所有員工的姓、名和電子郵件。

使用SELECT進行計算

現在,讓我們來點刺激的!SELECT不僅用於檢索原始數據;我們還可以用它來進行計算。

範例3:基本算術

SELECT
product_name,
unit_price,
units_in_stock,
unit_price * units_in_stock AS total_value
FROM products;

在這個查詢中,我們不僅選擇列,還在做一些數學計算!我們將單價乘以庫存數量來獲得每個產品的總價值。

範例4:使用內置函數

SQL提供了各種內置函數,讓我們的生活變得更加輕鬆。以下是一個使用UPPER函數的範例:

SELECT
UPPER(first_name) AS uppercase_first_name,
UPPER(last_name) AS uppercase_last_name
FROM employees;

這個查詢將所有名稱和姓氏轉換為大寫。就像請求數據庫對我們大喊名稱!

在SELECT語句中別名列

有時候,我們數據庫中的列名不太用戶友好,或者我們想要為我們計算的列給予有意義的名稱。這時別名就派上用場了!

別名是什麼?

別名就像給列起個綽號。它不會改變數據庫中實際的列名;它只是改變了查詢結果中的顯示方式。

範例5:基本別名

SELECT
first_name AS "First Name",
last_name AS "Last Name"
FROM employees;

在這個範例中,我們為我們的列給予了友好的別名。在我們的結果中,我們將看到“First Name”和“Last Name”,而不是“first_name”和“last_name”。

範例6:別名計算列

SELECT
product_name,
unit_price,
units_in_stock,
unit_price * units_in_stock AS "Total Inventory Value"
FROM products;

在這裡,我們為我們計算的列給予了一個描述性名稱。這讓我們的查詢結果更加易讀和自説明。

結合所有知識

讓我們把我們學到的所有知識結合成一個偉大的查詢:

SELECT
UPPER(p.product_name) AS "Product",
p.unit_price AS "Price",
p.units_in_stock AS "Stock",
p.unit_price * p.units_in_stock AS "Total Value",
c.category_name AS "Category"
FROM
products p
JOIN
categories c ON p.category_id = c.category_id
WHERE
p.units_in_stock > 0
ORDER BY
"Total Value" DESC;

這個查詢:

  1. 選擇產品信息
  2. 計算每個產品的總價值
  3. 使用別名以提高可讀性
  4. 連接產品表和分類表
  5. 過濾庫存中有的產品
  6. 按總價值降序排序結果

很酷吧?我們已經從簡單的SELECT語句走了很遠了!

結論

恭喜你!你剛剛邁出了進入SQL SELECT查詢奇妙世界的第一步。記住,熟練才能完美,所以不要害怕嘗試這些概念。

這裡是一個我們所學方法的快速參考表:

方法 描述 範例
基本SELECT 從表中檢索數據 SELECT column FROM table;
帶計算的SELECT 在查詢中進行計算 SELECT column1 * column2 AS result FROM table;
帶函數的SELECT 使用內置的SQL函數 SELECT UPPER(column) FROM table;
帶別名的SELECT 在結果集中重命名列 SELECT column AS "New Name" FROM table;

愉快地查詢吧,願你的數據永遠乾淨,你的連接總是成功!

Credits: Image by storyset