SQL Server では、通常、文字列比較では大文字と小文字が区別されます。ただし、WHERE 句で大文字と小文字を区別しない比較を実行する必要がある場合は、COLLATE 演算子を使用できます。
例:
次のデータがあるとします。 myTable というテーブル内:
| myField | |---------| | sOmeVal | | AnOtHeRVaL |
次のクエリは、myField 列が存在するすべての行を選択します。大文字と小文字を区別しない方法で sOmeVal と等しい:
SELECT * FROM myTable WHERE myField COLLATE SQL_Latin1_General_CP1_CI_AS = 'sOmeVal';
COLLATE 演算子は 2 つの引数を取ります:
照合順序は、文字列を比較するための規則を指定します。この例では、大文字と小文字を区別しない比較を実行する SQL_Latin1_General_CP1_CI_AS 照合順序を使用しています。
データベースのデフォルトの照合順序は異なる場合があることに注意してください。次のクエリを使用してデフォルトの照合順序を確認できます:
SELECT COLLATION_NAME FROM sys.databases WHERE name = 'myDatabase';
デフォルトの照合順序で大文字と小文字が区別されない場合は、クエリで照合順序を明示的に指定する必要があります。
以上がSQL Server で大文字と小文字を区別しない文字列比較を実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。