MySQL の OCTET_LENGTH() 関数も文字列の長さを「バイト」単位で測定することがわかっているため、これは MySQL LENGTH() 関数の同義語です。この関数の構文は OCTET_LENGTH(Str) です。Str は返される文字列です。
LENGTH() 関数のようなマルチバイト セキュリティもサポートしていません。たとえば、文字列に 4 つの 2 バイト文字が含まれている場合、OCTET_LENGTH() 関数は 8 を返します。以下の例に示されています。-
mysql> Select OCTET_LENGTH('tutorialspoint'); +--------------------------------+ | OCTET_LENGTH('tutorialspoint') | +--------------------------------+ | 14 | +--------------------------------+ 1 row in set (0.00 sec)
上記の結果セットは、文字列「tutorialspoint」が Unicode 文字に変換されていないため、長さが 14 であることを示しています。次のクエリは、文字列を Unicode 文字に変換します。 −
mysql> SET @A = CONVERT('tutorialspoint' USING ucs2); Query OK, 0 rows affected (0.02 sec)
文字列を Unicode に変換すると、結果は 14 ではなく 28 になります。これは、以下に示すように、Unicode では 1 文字が 2 バイトかかるためです。 −
mysql> Select OCTET_LENGTH(@A); +------------------+ | OCTET_LENGTH(@A) | +------------------+ | 28 | +------------------+ 1 row in set (0.00 sec)
以上がMySQL LENGTH() 関数と同義の関数はどれですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。