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

SQLserver2005で年月ごとの体重を表示するSQL文の作成方法

このQ&Aのポイント
  • SQLserver2005環境で、テーブルAから指定した年月ごとの体重を表示するSQL文の作成方法について教えてください。
  • テーブルAには年月とIDでユニークなデータがあり、年月ごとに体重が保存されています。
  • 指定した年月で抽出をかけた際に、今月の体重と前月の体重を取得するSQL文を作成したいです。

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

  • ベストアンサー
  • yamada_g
  • ベストアンサー率68% (258/374)
回答No.2

サブクエリで取得するのが簡単なのではないでしょうか。 こんなイメージです。 select  年月,ID,体重 as 今月体重 ,(select 体重 from テーブルA b where b.ID = a.ID and b.年月 = a.年月の1か月前) as 前月体重 from テーブルA a where a.年月 = 2011年02月; 年月のデータ型が分かりませんし、SQL Serverでの日付関連の処理に詳しくないので >a.年月の1か月前 この部分はご自身でうまく処理してください。

BAISYS
質問者

お礼

本当に助かりました。 年月の1か月前とかもなんとかなりそうです。

その他の回答 (1)

  • nora1962
  • ベストアンサー率60% (431/717)
回答No.1

with t as (select cast( replace( REPLACE( 年月, '年', '/'),'月', '/') + '1' as DATE) as dt, 年月,ID, 体重 from テーブルA) select t1.*,t2.体重 as 前月体重 from t t1 left join t t2 on t1.dt = DATEADD(MONTH,1,t2.dt) and t1.id = t2.id where t1.年月 ='2011年02月'

BAISYS
質問者

お礼

ありがとうございました。 SQLの世界が広がりました。

関連するQ&A