- PR -

SQL caseについて

1
投稿者投稿内容
mtg
常連さん
会議室デビュー日: 2006/07/07
投稿数: 42
投稿日時: 2007-12-26 11:20
oracleデータベースへの問合せでcase文を利用しておりますが、caseの結果をwhereの
条件には出来ますでしょうか。下記の問合せの条件でkekkaが"あ"と"い"だけを抽出したいのですが、下記のSQL文ではエラーが出ます。何か方法はありますでしょうか。

select case when A = '1' then 'あ'
when B = '2' then 'い'
when C = '3' then 'う'
end kekka
from TEST_DB
where kekka = 'あ' and kekka = 'い'

宜しくお願い致します。
かずくん
ぬし
会議室デビュー日: 2003/01/08
投稿数: 759
お住まい・勤務地: 太陽系第三惑星
投稿日時: 2007-12-26 12:30
Inline Viewとか表式とかで検索すれば幸せになれるでしょう。
檸檬
ベテラン
会議室デビュー日: 2004/04/26
投稿数: 87
投稿日時: 2007-12-26 14:39
副問い合わせでできると思います。(実はOracleはよく知らないのでできなかったらごめんなさい;;)

select kekka
from
(
select case when A = '1' then 'あ'
when B = '2' then 'い'
when C = '3' then 'う'
end kekka
from TEST_DB
)
where kekka = 'あ' and kekka = 'い'
mtg
常連さん
会議室デビュー日: 2006/07/07
投稿数: 42
投稿日時: 2007-12-26 16:02
副問合せで解決しました。
ありがとう御座いました。
1

スキルアップ/キャリアアップ(JOB@IT)