という列がありCities
、この列には次のようなデータがあります。
City 1
CITY 1
CITY 1
CITY
(大文字) のみを選択したい
これは仕事をしていません:
SELECT * FROM Location
WHERE Cities LIKE 'CITY 1'
これは私にすべてのインクルードを与えていCITY 1
ますCity 1
という列がありCities
、この列には次のようなデータがあります。
City 1
CITY 1
CITY 1
CITY
(大文字) のみを選択したい
これは仕事をしていません:
SELECT * FROM Location
WHERE Cities LIKE 'CITY 1'
これは私にすべてのインクルードを与えていCITY 1
ますCity 1
既定では、SQL Server は大文字と小文字を区別しない照合を使用します。
SELECT *
FROM Location
WHERE Cities LIKE 'CITY 1'
COLLATE Latin1_General_CS_AI
大文字と小文字を区別する照合を使用して比較演算子をマークし、大文字と小文字を区別するフィルターを適用します
あなたの SQL は大文字と小文字を区別しない照合にあると思います。その場合、「C」と「c」を検索すると同じ結果が返されます。クエリを照合して、大文字と小文字を区別して検索する必要があります。
SELECT * FROM Location WHERE Cities LIKE 'CITY 1' COLLATE <Insert case sensitive collation here>
例えば
SELECT * FROM Location WHERE Cities LIKE 'CITY 1' COLLATE Latin1_General_CS_AI
BINARY 演算子を使用して、大文字と小文字を区別することができます。
http://dev.mysql.com/doc/refman/5.0/en/charset-binary-op.html
SELECT * FROM Location WHERE BINARY Cities = 'CITY 1';
このクエリを試してください。
SELECT *
FROM Location
WHERE Cities LIKE 'CITY 1'
COLLATE Latin1_General_CS_AS;
照合により、クエリで大文字と小文字が区別される 'CS' とアクセントが区別される 'AS' が作成されます。Latin1 は、他の多くの言語の中で英語を指定します。