我正在尝试运行一个根据昨天的日期返回值的查询。在这种情况下,昨天运出了多少件物品。这是我的问题:
shh.SHIP_DATE = dateadd(dd, -1, getdate())
当我运行它时它不会返回任何内容,但是当我插入日期时它会给我值:
shh.SHIP_DATE = '2013-12-09'
答案 0 :(得分:0)
SHIP_DATE
列是日期还是日期时间?我假设它是一个datetime列,但只存储一个日期值,所以当你使用getdate()时,你也会得到时间值。您可以使用谓词(shh.SHIP_DATE = cast(dateadd(dd, -1, getdate()) as date))
答案 1 :(得分:0)
GETDATE()
也包括当前时间。您需要截断时间部分。失去了做到这一点的方法 - 这是一个:
shh.SHIP_DATE = DATEADD(dd, DATEDIFF(dd, 0, getdate())-1, 0)
已翻译 - 添加一个小于日期“0”和今天之间的天数,日期为“0”