摘要:在本教學中,您將學習如何使用 SQL LENGTH
函數來取得字串中的字元數。
SQL LENGTH 函數簡介
SQL LENGTH
函數會傳回字串中的字元數。LENGTH
函數在每個關聯式資料庫系統中都可使用。某些資料庫系統使用 LEN
函數,其效果與 LENGTH
函數相同。
以下說明 LENGTH
函數的語法。
LENGTH(string)
Code language: SQL (Structured Query Language) (sql)
如果輸入字串為空,LENGTH
會傳回 0。如果輸入字串為 NULL
,則會傳回 NULL
。
對於 ASCII 字串,字元數與位元組數相同。對於其他字元集,它們可能不同。
在某些關聯式資料庫系統(例如 MySQL 和 PostgreSQL)中,LENGTH
函數會傳回位元組數。若要在 MySQL 和 PostgreSQL 中取得字串中的字元數,您可以使用 CHAR_LENGTH
函數。
SQL LENGTH 範例
以下陳述式使用 LENGTH
函數來傳回字串 SQL
的字元數
SELECT LENGTH('SQL');
Code language: SQL (Structured Query Language) (sql)
length
--------
3
(1 row)
Code language: SQL (Structured Query Language) (sql)
請參閱範例資料庫中的以下 employees
表格。
以下陳述式傳回名稱最長的前五名員工。
SELECT
employee_id,
CONCAT(first_name, ' ', last_name) AS full_name,
LENGTH(CONCAT(first_name, ' ', last_name)) AS len
FROM
employees
ORDER BY len DESC
LIMIT 5;
Code language: SQL (Structured Query Language) (sql)

查詢如何運作。
- 首先,使用
CONCAT
函數,透過串連名字、空格和姓氏來建構員工的全名。 - 其次,套用
LENGTH
函數以傳回每位員工全名的字元數。 - 第三,依據
LENGTH
函數的結果對結果集進行排序,並從排序後的結果集中取得五列。
在本教學中,您已學習如何使用 SQL LENGTH
函數來取得字串中的字元數。
這個教學對您有幫助嗎?