- ベストアンサー
大文字と小文字の判別について
SQL-SERVERにて大文字と小文字のデータが存在した場合に小文字のデータのみ抽出したいのですがうまくいきません。どなたか教示下さい。 例(データ内 (1)A (2)a の場合SQLにて(2)のデータのみ取得したい)
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
http://technet.microsoft.com/ja-jp/library/ms141038.aspx あたりが参考になりませんか? 大文字・小文字を区別しない設定となっていませんか?
その他の回答 (3)
- nora1962
- ベストアンサー率60% (431/717)
http://msdn.microsoft.com/ja-jp/library/ms184391.aspx create table tbl ( col1 varchar(10) ) insert into tbl values ( 'abcdefg' ) insert into tbl values ( 'ABCDEFG' ) select * from tbl where col1 collate japanese_bin = 'abcdefg'
- kiy0kiy0
- ベストアンサー率0% (0/1)
--こんな記述を見つけたのですが、いかがですか? --主旨が違っていたらごめんなさい。 SQL-Serverの設定で、英字の大文字と小文字を区別しない設定(デフォルト設定)の時、大文字小文字を区別する方法。 絞り込む条件のフィールド「FIELD_NAME」の場合の例 SELECT * FROM hoge WHERE convert(varbinary(11), RTrim(FIELD_NAME)) = convert(varbinary(11), 'abcdefghij') 「FIELD_NAME」がvarchar(10)の場合、varbinary(11)と1バイト以上大きい文字指定すること。 varbinary(10)だとFIELD_NAME='abcdefghij'、変数='abcdefghijklmnopqrstu'の時も条件を満たしてしまいます。
- kokorone
- ベストアンサー率38% (417/1093)
例がシンプルすぎます。 1)AAA2)aaa3)AaA の場合、何を抽出するのでしょうか? 小文字のデータを含むレコードであれば、 Field1 <> UPPER(Field1) の条件で、いかがでしょうか? 生のデータと、大文字変換したデータが異なる という条件です。
補足
テーブル内に KEY Field1 1 AAA 2 aaa 3 AaA のレコードが存在した場合に SQL文でWHERE Field1 ="aaa"とした場合に3レコードヒットしてしまいます。これをKEY=2のみ抽出したいのですがうまくいきません。
お礼
設定が大文字と小文字は区別しない設定となっていることが分かりましたがMasterデータベースの変更が出来ません。再インストールが必要でしょうか?