概要: このチュートリアルでは、SQL LENGTH
関数を使用して文字列の文字数を取得する方法を学習します。
SQL LENGTH 関数の紹介
SQL LENGTH
関数は、文字列の文字数を返します。 LENGTH
関数は、すべてのリレーショナルデータベースシステムで使用できます。一部のデータベースシステムでは、LENGTH
関数と同じ効果を持つ LEN
関数を使用します。
以下は、LENGTH
関数の構文を示しています。
LENGTH(string)
Code language: SQL (Structured Query Language) (sql)
入力文字列が空の場合、LENGTH
は 0 を返します。入力文字列が NULL
の場合は NULL
を返します。
文字数は、ASCII 文字列のバイト数と同じです。他の文字セットでは、異なる場合があります。
LENGTH
関数は、MySQL や PostgreSQL などの一部のリレーショナルデータベースシステムではバイト数を返します。 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
テーブルを参照してください。
次のステートメントは、名前が最も長い上位 5 人の従業員を返します。
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
関数を適用して、各従業員のフルネームの文字数を返します。 - 3 番目に、
LENGTH
関数の結果で結果セットをソートし、ソートされた結果セットから 5 行を取得します。
このチュートリアルでは、SQL LENGTH
関数を使用して文字列の文字数を取得する方法を学習しました。
このチュートリアルは役に立ちましたか?