SQL中で文字列のバイト数を取得する関数はDBMSにより異なります.以下に各DBMSごとに使用可能な関数を示します.
DBMS | SQL |
---|---|
Access | LENB |
SQLServer | 存在しない |
Oracle | LENGTHB |
MySQL | LENGTH |
OCTET_LENGTH | |
PostgreSQL | OCTET_LENGTH |
ここでは各DBMSごとに文字列のバイト数を取得する方法を紹介します.
AccessはLENB関数を使用します.
SQLサンプル
LENB関数を使用して文字列のバイト数を取得する例を以下に示します.
SELECT LENB('チャーリー');
結果
EXPR1000 |
---|
10 |
OracleはLENGTHB関数を使用します.
SQLサンプル
LENGTHB関数を使用して文字列のバイト数を取得する例を以下に示します.
SELECT LENGTHB('スヌーピー')
結果
SELECT LENGTHB('スヌーピー') |
---|
10 |
MySQLはLENGTH関数かOCTET_LENGTH関数を使用します.2つの関数は名前が違うだけで機能は同一です.
SQLサンプル
LENGTH関数を使用して文字列のバイト数を取得する例を以下に示します.
SELECT LENGTH('ルーシー')
結果
SELECT LENGTH('ルーシー') |
---|
8 |
PostgreSQLはOCTET_LENGTH関数を使用します.
SQLサンプル
OCTET_LENGTH関数を使用して文字列のバイト数を取得する例を以下に示します.
SELECT OCTET_LENGTH('スヌーピー')
結果
SELECT OCTET_LENGTH('スヌーピー') |
---|
10 |