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

データの比較方法と条件について

このQ&Aのポイント
  • SQLserver2005を使用している場合、データの比較方法と条件を確認したいです。
  • 特定のデータの中から一つ前のデータと比較し、値が100以上変化しているデータを抽出する条件を作りたいです。
  • 日付も考慮しながらデータの比較を行い、条件に一致するデータを抽出する方法がわかりません。ご教示いただけると幸いです。

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

  • ベストアンサー
  • jamshid6
  • ベストアンサー率88% (591/669)
回答No.1

本件は日付+時刻でユニークでないと話が成り立たないので、以下のようなテーブルを仮定します。 CREATE TABLE TBL1 ([TXNDATE][datetime] PRIMARY KEY,[VAL][int]) 以下の通りです(全角スペースでネストさせてます) SELECT t1.TXNDATE, t1.VAL FROM (SELECT  t.TXNDATE,t.VAL,  (SELECT MAX(TXNDATE) FROM TBL1   WHERE TXNDATE<t.TXNDATE   AND TXNDATE>=CONVERT(datetime,CONVERT(varchar,t.TXNDATE,111))) PREVDATE  FROM TBL1 t) t1 INNER JOIN TBL1 t2 ON t2.TXNDATE=t1.PREVDATE WHERE (t1.VAL-t2.VAL)<=-100 1) まず自分の1つ前のレコードの日付&時刻を検索する(自分の日付の0時以降で、自分の日付&時刻より前) 2) その上でそのレコードとJOINして比較する

kuroyume21
質問者

お礼

お礼遅れまして申し訳ございません. 無事にできることができました. ありがとうございます.

関連するQ&A