• 締切済み

最大日付の抽出と加算方法について

始めて投稿するので内容について良くわからないかも しれませんが、 自分ではどうしてもわからない為、 教えて下さい。 ソフトはMicrosoftSQLServerの6.0を使って作業して います。 私が四苦八苦している問題は、以下になります。 ”条件Aに当てはまる最大の変更月とその月数を加算 する” 条件A:Aテーブル住所=Bテーブルの住所、     Aテーブル証明番号=Bテーブルの証明番号 Aテーブル              証明番号|住所|変更月  |月数 --------------------------------- 6201  |東京|2005-10-24|10         --------------------------------- 9000  |東京|2007-12-15|2 --------------------------------- 8900  |千葉|2006-01-14|5 Bテーブル 証明番号|住所| ---------------- 5862  |埼玉| ---------------- 6201  |東京| ---------------- 9000  |東京| 結果は、2番目のデータを抽出及び計算をし、 ”2008-02-15”と出したいと思っています。 SELECT DATEADD (MONTH,A.月数,MAX(A.変更月)) FROMA,B WHERE A.住所   = B.住所 AND A.証明番号 = B.証明番号 上記のように記述したのですが、うまく起動してくれ ません。。。っと言うか、 最大の変更月を抽出して いないようです。 申し訳ありませんが、宜しくお願い致します。

みんなの回答

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.3

「ORDER BYがどうの」ではどんな問題が発生しているのか分かりません。

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.2

使えます。SQL Server 6.5で動作を確認しています。 6.0では確認が取れていませんが、6.0でも使えるはずです。

taka0411
質問者

補足

何度もすいません。 教えていただいたコマンドを実行すると、ORDER BYが どうのって言われてしまい、エラーとなってしまいま す。 ORDER BYって「纏める」って言う意味でしたよね? 何を纏めるのでしょうか?

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.1

SELECT DATEADD(MONTH, A.月数, A.変更月)   FROM A,B   WHERE A.住所 = B.住所 AND     A.証明番号 = B.証明番号 AND     A.変更月 = (SELECT MAX(変更月) FROM A) ではいかが。

taka0411
質問者

補足

返信有難うございます。 WHERE句の中で演算句は使えないと思うのですが、 間違っていますか?

関連するQ&A