大家好我想要发票和客户端的搜索数据到今天我正在使用DateDiff()GETDATE()函数,例如两个表
1个客户
- ID int
- Name Varcher
2发票
- ID int
- ClientID int
- date Datetime
- Total money
查询
Select * from client c
inner join invoice i on c.id = i.ClientID
WHERE DateDiff(dd, i.date, getdate()) = 0
当我运行查询getdate()时,它是从日期时间开始获取日期的函数 日期内容当前月份和当前年份和当前日期 当我今天运行查询时,日期是08-23-2010,当我明天运行查询时,日期是08-24-2010。
问题 - 查询做了一个相同的日期我希望从日期时间到月份获得月份,获得年份 从现在的日期开始,仅限特定日期。
答案 0 :(得分:0)
我不明白你的问题,但就我所知,你希望有0天以外的时差。然后,您必须使用其他日期部分(DateDiff()
的第一个参数)。有关详细信息,请参阅MS documentation of DateDiff或DateAdd函数。
此外,也许你想使用
i.date between DateAdd(dd, -10, getDate) and getDate()
(这将显示十天前和今天之间的所有内容。)
答案 1 :(得分:0)
declare @day integer
select @day = 10
Select * from client c
inner join invoice i on c.id = i.ClientID
WHERE
DateDiff(dd, i.date, dateadd(dd,@day-datepart(dd,getdate()),getdate())) = 0