BINARY

BINARY

BINARY 演算子はそれに続いて、バイナリ ストリングにストリングをキャストします。これはカラムの比較を強制的に、文字ごとでなくバイトごとに行わせる簡易な方法です。カラムが BINARY または BLOB と定義されていない場合でも、大文字小文字を区別した比較になります。BINARY もまた、後続のスペースを重要なものにします。

mysql> SELECT 'a' = 'A';
        -> 1
mysql> SELECT BINARY 'a' = 'A';
        -> 0
mysql> SELECT 'a' = 'a ';
        -> 1
mysql> SELECT BINARY 'a' = 'a ';
        -> 0

比較において、BINARY は演算全体に影響を与えます。同じ結果を持つどちらのオペランドの前にでも、与えることができます。

BINARY str は、CAST(str AS BINARY) の省略表記です。

コンテキストのあるものでは、インデックス付きのカラムを BINARY にキャストした場合、MySQL はそのインデックスを有効に使うことができません。