• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SQL)

2009年の売上データと増減を取得するSQL文

このQ&Aのポイント
  • 売上テーブルから、2009年の売上データと2008年と比較した売上数の増減を取得するSQL文を教えていただきたいです。
  • 次のような売上テーブルから、商品の昇順で2009年のデータと2008年と比較した売上数の増減を取得したいです。
  • 売上テーブルから、2009年のデータと2008年と比較した商品の売上数の増減を取得するためのSQL文を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • root139
  • ベストアンサー率60% (488/809)
回答No.1

下記のような事を行えばよいかと。 1. 2009年と2008年で絞込み 2. 1を商品が同じという条件で自己結合 3. 商品と2009年の売上数を取得 4. 2009年の売上数から2008年の売上数を引いて増減を算出(ただし null の場合は0とみなすようにする) 5. 商品の昇順でソート 例) -------------------------------------------------------------- SELECT CASE WHEN a.商品 IS NULL THEN b.商品 ELSE a.商品 END AS 商品, a.売上数 AS 2009年の売上数, CASE WHEN a.売上数 IS NULL THEN 0 ELSE a.売上数 END - CASE WHEN b.売上数 IS NULL THEN 0 ELSE b.売上数 END AS 増減 FROM 売上テーブル a FULL OUTER JOIN 売上テーブル b USING(商品) WHERE a.年 = 2009 AND b.年 = 2008 ORDER BY 商品 ------------------------------------------------------------------ (何のDBMSが対象なのか分からないので、例は標準SQLに沿うように書きました)

i02024
質問者

お礼

ご回答ありがとうございました。 (ちなみにDBMSはOracleです。ご配慮ありがとうございます。)

関連するQ&A