首先是满足,我很新的使用SQL查询,所以我很抱歉,如果我听起来无知......设置默认值IF条件SQL 2008
我有一个已经存储在数据库工作每小时下降并创建一张表。该表看起来是这样,但有数据为每小时1至24
Name Hour1 Hour24
Point 1 OUT 4 5
Point 1 IN 26 22
Point 2 OUT 46 44
Point 2 IN 0 0
Point 3 OUT 18 19
Point 3 IN 56 51
Point 4 OUT 111 100
Point 4 IN 0 0
Point 5 OUT 0 0
Point 5 IN 42 46
Point 6 IN 210 211
下降后,创造,该数据库在最后叫日期添加一列,并将当天的日期作为默认值。我的问题是在上午12:00导入数据时,当前日期实际上是明天。出于会计目的,我需要这些数据才能有同一天。
我花了瞎猜,并尝试这个,但语法都错了......
[Date] [datetime] DEFAULT if(DATEPART(hh)=24) CONVERT(GETDATE(DATEPART(dd)-1))
是在创建表查询的if语句这样的可能吗?有没有更好的方法来解决这个问题?
感谢您的帮助!
你试过['dated datediff'](http://www.w3schools.com/sql/func_datediff.asp)? – bonCodigo
我确定我错误地使用了datediff,但我尝试使用convert(varchar(2),getdate(),108)来声明一个变量来收集当前小时,并在像这样使用它时使用它:select datediff(hh, 24小时)。它回到了-240 – bonneyt