大なり演算子と小なり演算子を使用した SQL での文字列比較
SQL では、より大きい (>) とより小さい (<) ;) シンボルを使用して文字列値を比較できます。この機能は、MySQL と SQL Server の両方で利用できます。
仕組み:
これらの演算子を使用した文字列比較は、ブール値 (TRUE、FALSE、または NULL) を返します。 。比較が TRUE と評価されるには、使用される文字セットと照合順序に基づいて、左側の文字列が辞書順で右側の文字列より前に表示される必要があります。
たとえば、MySQL のデフォルトの文字セット (latin1) )、次の式は TRUE を返します:
'ball' < 'water'
これは、文字内で 'b' が 'w' の前にあるためです。 set.
大文字と小文字の区別:
文字列比較で大文字と小文字が区別されるかどうかは、データベースによって異なります。デフォルトでは、MySQL と SQL Server はどちらも大文字と小文字を区別しません。ただし、大文字と小文字を区別する文字セット照合順序を指定することで、大文字と小文字を区別した比較を行うことができます。 MySQL では、これは、「_ci」ではなく「_cs」で終わる文字セット名を使用することによって行われます。
たとえば、MySQL の場合:
'BALL' < 'water' COLLATE latin1_cs
この式は、次の理由により FALSE を返します。 「BALL」と「water」は、大文字と小文字を区別した比較で同じ文字列とみなされます。
例クエリ:
大なり演算子を使用したクエリの例:
SELECT * FROM table WHERE name > 'John';</p> <p>このクエリは、'name' 列の値が ' より大きいすべての行を返します。 John' を辞書順に並べています。</p> <p>以下は、未満を使用したクエリの例です。演算子:</p> <pre class="brush:php;toolbar:false">SELECT * FROM table WHERE date_of_birth < '2000-01-01';
このクエリは、'date_of_birth' 列の値が '2000-01-01' より小さいすべての行を返します。
以上がSQL の「以上」演算子と「以下」演算子はどのように文字列を比較するのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。