摘要:在本教程中,您將學習如何使用 SQL UPPER 函式返回一個所有字元都轉換為大寫的新字串。
SQL UPPER 函式簡介 #
UPPER 函式接受一個字串,並返回一個所有字元都轉換為大寫的新字串。
這是 UPPER 函式的語法:
UPPER(string)Code language: SQL (Structured Query Language) (sql)UPPER 函式返回一個新字串,其中 string 的所有字元都已轉換為大寫。如果 string 是 NULL,UPPER 函式將返回 NULL。
基本的 SQL UPPER 函式示例 #
以下語句使用 UPPER 函式將字串 sql upper 轉換為大寫:
SELECT
UPPER('sql upper') result;Code language: SQL (Structured Query Language) (sql)輸出
result
-----------
SQL UPPERCode language: SQL (Structured Query Language) (sql)以下查詢將 UPPER 函式與 NULL 一起使用:
SELECT
UPPER(NULL) result;Code language: PHP (php)輸出
result
--------
NULLCode language: PHP (php)將資料轉換為大寫 #
我們將使用示例資料庫中的 employees 表。

以下查詢使用 UPPER 函式從 last_name 列檢索資料並將其轉換為大寫:
SELECT
UPPER(last_name) formatted_last_name
FROM
employees
ORDER BY
formatted_last_name;Code language: SQL (Structured Query Language) (sql)輸出
formatted_last_name
---------------------
AUSTIN
BAER
BAIDA
BELL
CHEN
...在此示例中,我們從 employees 表的 last_name 列中檢索資料,並動態地將其轉換為大寫。employees 表的 last_name 列中的資料保持不變。
不區分大小寫地篩選資料 #
當使用 WHERE 子句篩選資料時,資料庫系統會區分大小寫來匹配字串。例如,字串字面量 Bruce 與 bruce 是不同的。
要不區分大小寫地匹配文字字串,您可以在 WHERE 子句中使用 UPPER 函式,如下所示:
SELECT
employee_id,
first_name
FROM
employees
WHERE
UPPER(first_name) = 'BRUCE';Code language: SQL (Structured Query Language) (sql)請注意,此查詢會掃描整個表以查詢匹配的行。如果表很大,查詢速度會很慢。
為了解決這個問題,一些資料庫系統提供了基於函式的索引,允許您基於一個或多個列的函式來定義索引,從而獲得更好的查詢效能。
摘要 #
- 使用
UPPER函式從一個字串中返回一個所有字元都轉換為大寫的新字串。
資料庫 #
本教程是否有幫助?