ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

質問者:fca2papa 大文字と小文字の判別について
困り度:
  • すぐに回答を!
SQL-SERVERにて大文字と小文字のデータが存在した場合に小文字のデータのみ抽出したいのですがうまくいきません。どなたか教示下さい。
例(データ内 (1)A (2)a  の場合SQLにて(2)のデータのみ取得したい)
質問投稿日時:08/04/30 14:19
質問番号:3987361
この質問に対する回答は締め切られました。
最新から表示回答順に表示良回答のみ表示

回答

良回答10pt

回答者:nora1962 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'
種類:アドバイス
どんな人:一般人
自信:参考意見
回答日時:08/05/01 16:53
回答番号:No.4
この回答へのお礼この回答にお礼をつける(質問者のみ)

回答

 

回答者:kiy0kiy0 --こんな記述を見つけたのですが、いかがですか?
--主旨が違っていたらごめんなさい。

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'の時も条件を満たしてしまいます。
種類:補足要求
どんな人:経験者
自信:参考意見
回答日時:08/05/01 14:38
回答番号:No.3
この回答へのお礼この回答にお礼をつける(質問者のみ)

回答

良回答20pt

回答者:kokorone http://technet.microsoft.com/ja-jp/library/ms141038.aspx
あたりが参考になりませんか?
大文字・小文字を区別しない設定となっていませんか?
種類:アドバイス
どんな人:一般人
自信:参考意見
回答日時:08/04/30 16:16
回答番号:No.2
この回答へのお礼設定が大文字と小文字は区別しない設定となっていることが分かりましたがMasterデータベースの変更が出来ません。再インストールが必要でしょうか?

回答

 

回答者:kokorone 例がシンプルすぎます。
1)AAA2)aaa3)AaA
の場合、何を抽出するのでしょうか?
小文字のデータを含むレコードであれば、
Field1 <> UPPER(Field1)
の条件で、いかがでしょうか?
生のデータと、大文字変換したデータが異なる
という条件です。
種類:補足要求
どんな人:一般人
自信:参考意見
回答日時:08/04/30 14:56
回答番号:No.1
この回答への補足テーブル内に
 KEY Field1
 1   AAA
 2   aaa
 3   AaA
のレコードが存在した場合に
SQL文でWHERE Field1 ="aaa"とした場合に3レコードヒットしてしまいます。これをKEY=2のみ抽出したいのですがうまくいきません。
この回答へのお礼この回答にお礼をつける(質問者のみ)
最新から表示回答順に表示良回答のみ表示