PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
17962 02/08/14 16:36:09 RE(4):PB7.0: データウィンドウ上でのSQL文の処理 By K_Kondou
17949 02/08/13 15:27:46 RE(3):PB7.0: データウィンドウ上でのSQL文の処理 By ZONE
17946 02/08/12 18:31:09 RE(2):PB7.0: データウィンドウ上でのSQL文の処理 By K_Kondou
17942 02/08/12 16:14:10 RE(1):PB7.0: データウィンドウ上でのSQL文の処理 By ZONE
17940 02/08/12 15:52:14 PB7.0: データウィンドウ上でのSQL文の処理 By K_Kondou

カテゴリ:データウィンドウ
日付:2002年08月14日 16:36 発信者:K_Kondou
題名:RE(4):PB7.0: データウィンドウ上でのSQL文の処理

ZONEさん、こんにちは。
返答ありがとうございます。

ZoneさんのORACLEを参考にして、SUMの中に条件式を入れましたら、おかげさまで、出来ました。
どうもありがとうございました。

SELECT \"result\".\"タイプ\", 
(変更前) Case( \"result\".再試験フラグ when 0 then SUM(\"entry_log\".\"終了枚数\") else 0 end),
 ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
(変更後) SUM( Case \"result\".\"再試験フラグ when 0 then \"entry_log\".\"終了枚数\" else 0 end),
SUM(\"entry_log\".\"良品数\") 
FROM \"result\" 
GROUP BY \"result\".\"タイプ\" 
ORDER BY \"result\".\"タイプ\"

ただ、何故、条件式をSUM関数の中に入れないといけないのかわかりません。
しかも、「SELECTで用いられているもの(\"result\".\"再試験フラグ)はグループ内で指定されている必要があります」
という意味のエラーが出てしまうのかが疑問です。

>K_Kondouさん、こんにちは。

>ORACLEでしたら以下のようにすれば一度で出力できます。
>合計枚数 --- SUM(再試験フラグ=0だったら枚数、それ以外は0)
>合計不良品数 --- SUM(再試験フラグ=1だったら不良品数、それ以外は0)
>参考にして下さい。

>SELECT \"result\".\"タイプ\",
>SUM(DECODE(\"result\".\"再試験フラグ\",0,\"result\".\"枚数\",0)) \"合計枚数\",
>SUM(\"result\".\"良品数\") \"合計良品数\",
>SUM(DECODE(\"result\".\"再試験フラグ\",1,\"result\".\"不良品数\",0)) \"合計不良品数\",
>FROM \"result\"
>GROUP BY \"result\".\"タイプ\"
>ORDER BY \"result\".\"タイプ\"



付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows NT 4.0
DBMS Sybase SQL Anywhere Client
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.