1

特定の顧客による過去 3 時間のすべてのレコードを取得する最良の方法は何ですか? このSQLを設定する方法がよくわかりませんか?

スキーマ

CustID varchar AddressID varchar DateCreated datetime

4

2 に答える 2

5
SELECT C.* 
FROM Customer C
WHERE C.DateCreated > DATEADD(hour, -3, GetDate())

編集"past 3 hours by a certain customer"

SELECT C.* 
FROM Customer C
WHERE C.CustID = @CustID
AND C.DateCreated > DATEADD(hour, -3, GetDate())
于 2012-04-23T15:59:08.890 に答える
4

使用できる機能の 1 つはDATEADD. 以下の T-SQL は、MyColumn が現在の日付/時刻から 3 時間を引いた値以上の値を持つ MyTable からすべての行を取得します。

SELECT * 
FROM MyTable 
WHERE MyColumn >= DATEADD(hh,-3,GETDATE())

DATEADD の詳細については、こちらをご覧ください。

于 2012-04-23T15:56:41.260 に答える