SQL語法 - 別名(ALIAS)

閱讀時間約 3 分鐘

※ 別名:

目的在於提高SQL查詢的可讀性和簡潔性。

※ 別名有兩種:

  1. Column Alias(列別名):在查詢結果中的某一列,取一個臨時的新名字。
  2. Table Alias(表別名)給查詢中的表取一個短暫的新名字。

※ Column Alias

※ 為什麼需要 Column Alias:

主要用途是為了讓SQL查詢結果更清晰和易於理解。當我們在查詢(SELECT)表格中的欄位時,無論該欄位是表格原本就有的欄位,還是由表達式(expression)組成的新欄位,我們都可以給它取一個新的名字,這就是所謂的列別名。

※ 語法:

  • 在SQL語法中,我們通常在欄位或表達式後面加上AS關鍵字,然後接上我們想要的別名。
raw-image


  • 這裡的AS關鍵字是可以忽略。
SELECT column AS alias FROM table;
SELECT column alias FROM table;
  • 如果別名中包含空格或特殊字符,我們需要用反引號(``)將其括起來,這樣MySQL才能夠解讀說這是一個完整的別名。
raw-image


※ 場景:

計算欄位的平均值假設我們想要計算所有學生的平均分數。可以使用列別名來給這個平均分數取一個更直觀的名字,如下所示:

SELECT AVG(score) AS average_score FROM students;
//使用了AVG(score)這個表達式來計算平均分數,並且給結果取了一個新的名字average_score。

組合多個欄位假設我們有一個user表格,我們想要將其中first_name和last_name這兩個欄位組合成一個全名。我們可以使用列別名來給這個新的欄位取一個名字,如下所示:

raw-image


※TABLE ALIAS

※ 為什麼需要 TABLE Alias:

主要用途是為了解決在SQL查詢中合併多個表格時,出現欄位名字重複的問題。當我們需要將兩個或更多的表格合併在一起時,如果這些表格中有相同的欄位名,那麼在查詢時就可能會產生混淆,系統不清楚我們指的是哪一個表格的欄位。這時,我們可以給每個表格取一個臨時的新名字,也就是所謂的表別名,來明確地指定我們要查詢的是哪一個表格的欄位。

※ 語法:

  • 在SQL語法中,我們通常在欄位或表達式後面加上AS關鍵字,然後接上我們想要的別名。
raw-image
  • 這裡的AS關鍵字是可以忽略。
SELECT * FROM table_name AS alias_name;
SELECT * FROM table_name alias_name
  • 想要存取這個表格的某個欄位時,可以用別名去存取它,只需要在別名後面加上一個點(.),然後寫上欄位名稱。
raw-image


※ 範例:

employees表格中選取所有員工的名字(firstName)和姓氏(lastName),並按照名字(firstName)的字母順序來排序結果。

SELECT
e.firstName,
e.lastName
FROM
employees AS e
ORDER BY e.firstName​

解說:

  • SELECT e.firstName, e.lastName:這部分是選取employees表格中的firstNamelastName欄位。e是我們給employees表格取的別名。
  • FROM employees AS e:這部分是指定我們要查詢employees表格。我們給這個表格取了一個別名e,我們就可以用e來代替employees
  • ORDER BY e.firstName:這部分是指定我們要按照firstName欄位來排序查詢結果。查詢結果會按照員工的名字的字母順序來排序。
    全端網頁開發專業知識分享
    留言0
    查看全部
    avatar-img
    發表第一個留言支持創作者!
    ※ GROUP BY 用於將數據表中的數據按照一個或多個列進行分組。例如在處理一個表格的資料時,可以指定欄位,一個或是多個,然後把將其視為ID進行分組處理。 ※ 語法 SELECT column1, column2, ..., aggregate_function(column) FROM
    ※ 什麼是WHERE? 使用 WHERE來設定條件,可以幫助我們縮小查詢結果的範圍,取得想要的結果。 ※ 語法: ※ 解析順序: From:先看是哪一張table→table裡面符合Where指定條件的record→再看Select指定的是那些欄位→再根據那個欄位進行排序。 ※ 使⽤⽅
    ※ 什麼是ORDER BY? 可以讓SELECT出來的結果,根據你想要的方式排序。簡單說,用於對查詢結果進行排序。 ※ 語法: SELECT select_list FROM table_name ORDER BY column1 [ASC|DESC], column2 [ASC|DESC]
    ※ 語法 SELECT select_list FROM table_name​ ※ 解析順序 From:從哪裡拿? SELECT:要 "拿什麼" 資料? ※ 使用場景: Single column(單一欄位): Multiple column(多個欄位): All colu
    ※ 關聯式資料庫(RDBMS)是什麼? 關聯式資料庫(RDBMS)是一種傳統的資料庫系統,以結構化查詢語言(SQL)為基礎,將資料儲存於預定義的表格中。這些表格包括行和列,彼此之間存在明確的關聯性。 ※ 關聯式資料庫(RDBMS)有兩個重要元素: 關聯(Relational): 關聯式資料庫
    ※ 為什麼選擇SQLite? 安裝簡單:SQLite是一個零配置的資料庫,不需要複雜的設定和安裝過程。。 使用SQL語法。 設計選擇多元性(MySQL / SQLite):適合於小零件資料應用、嵌入式系統、物聯網設備。 ※ SQLite四大優點: 執行檔檔案很小:資料庫系統需要的磁碟空
    ※ GROUP BY 用於將數據表中的數據按照一個或多個列進行分組。例如在處理一個表格的資料時,可以指定欄位,一個或是多個,然後把將其視為ID進行分組處理。 ※ 語法 SELECT column1, column2, ..., aggregate_function(column) FROM
    ※ 什麼是WHERE? 使用 WHERE來設定條件,可以幫助我們縮小查詢結果的範圍,取得想要的結果。 ※ 語法: ※ 解析順序: From:先看是哪一張table→table裡面符合Where指定條件的record→再看Select指定的是那些欄位→再根據那個欄位進行排序。 ※ 使⽤⽅
    ※ 什麼是ORDER BY? 可以讓SELECT出來的結果,根據你想要的方式排序。簡單說,用於對查詢結果進行排序。 ※ 語法: SELECT select_list FROM table_name ORDER BY column1 [ASC|DESC], column2 [ASC|DESC]
    ※ 語法 SELECT select_list FROM table_name​ ※ 解析順序 From:從哪裡拿? SELECT:要 "拿什麼" 資料? ※ 使用場景: Single column(單一欄位): Multiple column(多個欄位): All colu
    ※ 關聯式資料庫(RDBMS)是什麼? 關聯式資料庫(RDBMS)是一種傳統的資料庫系統,以結構化查詢語言(SQL)為基礎,將資料儲存於預定義的表格中。這些表格包括行和列,彼此之間存在明確的關聯性。 ※ 關聯式資料庫(RDBMS)有兩個重要元素: 關聯(Relational): 關聯式資料庫
    ※ 為什麼選擇SQLite? 安裝簡單:SQLite是一個零配置的資料庫,不需要複雜的設定和安裝過程。。 使用SQL語法。 設計選擇多元性(MySQL / SQLite):適合於小零件資料應用、嵌入式系統、物聯網設備。 ※ SQLite四大優點: 執行檔檔案很小:資料庫系統需要的磁碟空
    你可能也想看
    Google News 追蹤
    Thumbnail
    這篇文章主要是介紹了SQL查詢效能調校的方法,針對索引最佳化做了整理和分享,並提供了一些注意事項和建議。
    Thumbnail
    在進行SQL查詢邏輯更改時,需要適當地使用SubQuery和join來達到新的排序需求。本文將介紹原本的撈取邏輯、需求以及如何使用SubQuery來解決新的排序需求。
    如何在SQL實踐中EXCEL 常用功能 篩選 和 擷取文字串?需要熟練地使用分組(GROUP BY) 與 排序 (ORDER BY) 以及SUBSTRING_INDEX函數!
    Thumbnail
    已命名範圍是 Google 試算表的功能,簡單來說可以把儲存格參照範圍改成自己想要的名字,可以讓算式更好讀、減少維護時間、減少錯誤機率、在算式和可以用這個名字引用這個範圍。來看看怎麼做!
    Thumbnail
    在用 QUERY 查詢資料時,你曾遇過在 WHERE 寫很多個 OR 的狀況嗎?有個更簡單好用的寫法推薦給你,來瞧瞧!
    Thumbnail
    在工作情境中手動執行SQL語法更新中文字時,有時會遇到中文字顯示問號(?)的情況。這篇文章將介紹如何解決手動執行SQL語法時造成中文顯示問號(?)的方法。
    Thumbnail
    這邊統整了所有過去發表過關於 QUERY 函式的教學分享,希望可以方便你按照順序閱讀和練習。 QUERY 可以用來查詢、篩選、聚集、排序資料,還可以做張簡易的資料透視表,是我在 Google 試算表上做數據分析、製作報告、製作儀表板時最常用的函式之一,既方便又好用,誠心推薦!
    Thumbnail
    題目敘述 題目會給定一個pandas DataFrame作為輸入,要求我們在原有的資料表上,將所有的column資料欄位名稱重新命名。 id 改名為 student_id first 改名為 first_name last 改名為 last_name age 改名為 age_in_year
    Thumbnail
    這篇文章主要是介紹了SQL查詢效能調校的方法,針對索引最佳化做了整理和分享,並提供了一些注意事項和建議。
    Thumbnail
    在進行SQL查詢邏輯更改時,需要適當地使用SubQuery和join來達到新的排序需求。本文將介紹原本的撈取邏輯、需求以及如何使用SubQuery來解決新的排序需求。
    如何在SQL實踐中EXCEL 常用功能 篩選 和 擷取文字串?需要熟練地使用分組(GROUP BY) 與 排序 (ORDER BY) 以及SUBSTRING_INDEX函數!
    Thumbnail
    已命名範圍是 Google 試算表的功能,簡單來說可以把儲存格參照範圍改成自己想要的名字,可以讓算式更好讀、減少維護時間、減少錯誤機率、在算式和可以用這個名字引用這個範圍。來看看怎麼做!
    Thumbnail
    在用 QUERY 查詢資料時,你曾遇過在 WHERE 寫很多個 OR 的狀況嗎?有個更簡單好用的寫法推薦給你,來瞧瞧!
    Thumbnail
    在工作情境中手動執行SQL語法更新中文字時,有時會遇到中文字顯示問號(?)的情況。這篇文章將介紹如何解決手動執行SQL語法時造成中文顯示問號(?)的方法。
    Thumbnail
    這邊統整了所有過去發表過關於 QUERY 函式的教學分享,希望可以方便你按照順序閱讀和練習。 QUERY 可以用來查詢、篩選、聚集、排序資料,還可以做張簡易的資料透視表,是我在 Google 試算表上做數據分析、製作報告、製作儀表板時最常用的函式之一,既方便又好用,誠心推薦!
    Thumbnail
    題目敘述 題目會給定一個pandas DataFrame作為輸入,要求我們在原有的資料表上,將所有的column資料欄位名稱重新命名。 id 改名為 student_id first 改名為 first_name last 改名為 last_name age 改名為 age_in_year