SQL Server の WHERE 句検索で大文字と小文字を区別する
標準 SQL Server WHERE
句の検索では、本質的に大文字と小文字が区別されません。 「John」と「john」は同一とみなされます。 ただし、状況によっては大文字と小文字を区別して比較する必要があります。 SQL クエリで大文字と小文字の区別を強制するためのいくつかの方法を次に示します。
照合順序の利用:
照合順序により、文字比較ルールが決まります。 大文字と小文字を区別する照合順序を指定すると、データベースで大文字と小文字が確実に区別されます。 実例:
<code class="language-sql">SELECT 1 FROM dbo.Customers WHERE CustID = @CustID COLLATE SQL_Latin1_General_CP1_CS_AS AND OrderID = @OrderID COLLATE SQL_Latin1_General_CP1_CS_AS</code>
大文字と小文字を区別する列の定義:
または、本質的に大文字と小文字の区別をサポートするように列定義を変更します。これには、列の照合設定の変更が含まれます。例:
<code class="language-sql">ALTER TABLE dbo.Customers ALTER COLUMN CustID NVARCHAR(50) COLLATE SQL_Latin1_General_CP1_CS_AS</code>
LIKE 内での照合順序の適用:
COLLATE
キーワードは、大文字と小文字を区別するパターン マッチングの LIKE
演算子とも併用できます。例:
<code class="language-sql">SELECT * FROM tbl_Partners WHERE PartnerName COLLATE SQL_Latin1_General_CP1_CS_AS LIKE 'MyEx%' COLLATE SQL_Latin1_General_CP1_CS_AS</code>
これらのメソッドは、SQL Server の WHERE
句内で大文字と小文字を区別する検索を柔軟に処理し、さまざまなクエリのニーズに適応します。
以上がSQL Server の WHERE 句で大文字と小文字を区別した検索を実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。