ホームページ > データベース > mysql チュートリアル > SQL の「以上」演算子と「以下」演算子はどのように文字列を比較するのでしょうか?

SQL の「以上」演算子と「以下」演算子はどのように文字列を比較するのでしょうか?

Susan Sarandon
リリース: 2025-01-06 15:05:42
オリジナル
853 人が閲覧しました

How Do SQL's Greater Than and Less Than Operators Compare Strings?

大なり演算子と小なり演算子を使用した 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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート