2011-07-22 11 views
-1

私はこれらの事について全く知らないので、私は本当にこれらの関数DATEDIFFまたはDateAddの助けが必要です。プラスSQLの2日付

Declare @EstDate as Date, 
     @Shipdate as Date, 
     @Workingday as Int, 

私はこのように実行する必要があります。

@EstDate(Date) = @ShipDate(DATE) - @WorkingDay(int) - 2days 

例:@EstDate(日付)= '2011年6月11日' - 5日 - 2日間。

SQLでこの式を実行するにはどうすればよいですか? > _ < PHPで簡単ですが、SQL 2000の上に、私は考えがありません。

+0

をあなたは休日などを考慮して、カレンダーのテーブルを作成する必要が本当の「営業日」を取得するには。 – JNK

+0

私はちょうどクエリが必要です。そのようなEstdateを計算する。私はすでにテーブルの上にすべてを持っています。 –

答えて

3

私はこれを行うと思います。基本的にこれは@ShipDateに負の日数を追加します。負の日数は@WorkingDay + 2になります。

@WorkingDayが表すはずのものは本当にわかりません。この例では、何かを表す数値であると仮定しています。

@EstDate = DateAdd(dd,-(@WorkingDay + 2),@ShipDate) 

それはあなたの例を考えると、次のようになります。

@EstDate(date) = DateAdd(dd, -(5 days + 2 days), '6/11/2011') 
+0

間違った仲間、EstdateはShipDate未満でなければなりません。クエリを実行する場合、EstDateはShipDateよりも大きいです... –

+0

nvm、use - (working +2)、that works:Dありがとう –