【お題】NEW演歌

例えば、下記のようなデータがあるとします。

|店舗CD| |在庫数|
 01001    1  
 10001    2

このデータをCASE文で店舗CDがLIKE '0*'のときにはas店舗在庫数へ
それ以外の場合にはas倉庫在庫数へ振分けを行いたいですが...
具体的には下記のようなイメージになります。

|店舗CD| |店舗在庫数| |倉庫在庫数|
 01001      1        0
 10001      0        2

下記が自分で記述した内容です。
SELECT
CASE
WHEN MAIN.店舗コード LIKE '0*' THEN MAIN.在庫数
    ELSE 0
END as 店舗在庫数,

CASE
WHEN MAIN.店舗コード NOT LIKE '0*' THEN MAIN.在庫数
ELSE 0
END 倉庫在庫数
FROM TBL_A

これで実行するとすべての在庫が倉庫在庫数へ振り分けられます。
どうすればイメージどおり抽出できるでしょうか?
識者の方がいれば是非ご教示いただきたいです。
よろしくお願いいたします。

A 回答 (1件)

LIKE '0%'とするかSUBSTR(MAIN.店舗コード,1,1) = '0'とか


つまり
CASE
WHEN MAIN.店舗コード LIKE '0%' THEN MAIN.在庫数
    ELSE 0
END as 店舗在庫数,

CASE
WHEN MAIN.店舗コード NOT LIKE '0%' THEN MAIN.在庫数
ELSE 0
END 倉庫在庫数


CASE
WHEN SUBSTR(MAIN.店舗コード,1,1) = '0' THEN MAIN.在庫数
    ELSE 0
END as 店舗在庫数,

CASE
WHEN SUBSTR(MAIN.店舗コード,1,1) NOT = '0' THEN MAIN.在庫数
ELSE 0
END 倉庫在庫数
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
「*⇒%」凡ミスでした。
何がいけないのかわからなかったので助かりました!

お礼日時:2011/01/26 10:57

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す


おすすめ情報