读书人

求sql:把购物车内的记要超过8小时的删

发布时间: 2012-08-09 15:59:21 作者: rapoo

求sql:把购物车内的记录超过8小时的删除
把购物车内的记录超过8小时的删除
表 Car
字段 carDate(加入购物车的时间)

不知道这样写是否正确:Delete From Car WHERE datediff(hh,carDate,getdate())>=8
datediff是否精确,最好不要8小时不到就删除了,这样的话商品无法加入购物车了,也不要超过8小时很久也没有删除,求正确的sql。

[解决办法]

SQL code
declare @t table(col datetime)insert into @tselect '2012-01-31 19:37:57.450' union allselect '2012-01-31 11:40:57.450' union allselect '2012-01-31 11:39:57.450' union allselect '2012-01-31 11:39:58.450' union allselect '2012-01-31 11:37:57.450' union allselect '2012-01-31 11:41:57.450' union allselect '2012-01-31 11:42:57.450' --得到8小时以前的数据select * from @t where datediff(hh,col,getdate())>=8/*col-----------------------2012-01-31 11:40:57.4502012-01-31 11:39:57.4502012-01-31 11:39:58.4502012-01-31 11:37:57.4502012-01-31 11:41:57.4502012-01-31 11:42:57.450*/--得到480分钟以前的数据select * from @t where datediff(mi,col,getdate())>=480/*col-----------------------2012-01-31 11:40:57.4502012-01-31 11:39:57.4502012-01-31 11:39:58.4502012-01-31 11:37:57.4502012-01-31 11:41:57.450*/
[解决办法]
Delete From Car WHERE datediff(mi,carDate,getdate())>= (8 * 60)

[解决办法]
delete from tbl where datediff(mi,carDate,getdate())>= 480

读书人网 >SQL Server

热点推荐