当前位置: 代码迷 >> Sql Server >> 求sql:把购物车内的记要超过8小时的删除
  详细解决方案

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

热度:104   发布时间:2016-04-27 11:52:32.0
求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
  相关解决方案