MySQL 文字列のビット数を取得する

  • 作成日 2021.12.24
  • 更新日 2022.12.15
  • mysql
MySQL 文字列のビット数を取得する

MySQLで、文字列のビット数を取得する手順を記述してます。

環境

  • OS ubuntu21.10
  • MySQL Ver 8.0.27-0ubuntu0.21.10.1 for Linux on x86_64 ((Ubuntu))
  • MySQL Workbench 8.0.27

手順

文字列のビット数を取得するには、「BIT_LENGTH( )」を使用します。

BIT_LENGTH( 文字列 )

実際に、ビット数を取得してみます。

SELECT 
BIT_LENGTH( 'abcde' ),
BIT_LENGTH( 'あいうえお' )

実行結果を確認すると、ビット数が取得されていることが確認できます。

※1バイト = 8ビット

数値を指定

数値を指定した場合は、1文字として扱われます。

SELECT 
BIT_LENGTH( 12345 ),
BIT_LENGTH( -12345 ),
BIT_LENGTH( 1.1 )

実行結果

サロゲートペア

サロゲートペア文字を指定した場合は、32ビット(4バイト)として扱われます

SELECT 
BIT_LENGTH( '😀' )

実行結果

バイト数で取得

バイト単位で取得する場合は「LENGTH( )」を使用します。

SELECT 
LENGTH( 'abcde' ),
LENGTH( 'あいうえお' )

実行結果