日期:2014-05-17  浏览次数:20555 次

关于计算日期间隔的SQL语句
表名 equip_regular_check
列名 last_test_date 有效期至

表中有多条数据 
通过select DATEDIFF(day,GETDATE(), last_test_date)计算出距离有效期至还有多少天

问:
能不能通过一条SQL语句 查出所有的数据的剩余天数
同时对数据进行排序
按照剩余的天数【排序

------解决方案--------------------
注:物品 GOODS

select Goods,datediff(d,getdate(),last_test_date) AS time from equip_regular_check as e
order by datediff(d,getdate(),last_test_date)
------解决方案--------------------
SQL code
select DATEDIFF(day,GETDATE(), last_test_date) from equip_regular_check order by 1

------解决方案--------------------
可以,你试试下面语句,不过按你的语句得出的是负数,我改下.

SELECT DATEDIFF(DAY,last_test_date,GETDATE()) AS RemainDay FROM equip_regular_check
ORDER BY RemainDay.

你试试
------解决方案--------------------
SQL code
select *,datediff(dd,getdate(),last_test_date) as 剩余天数 
from equip_regular_check
order by datediff(dd,getdate(),last_test_date) asc

------解决方案--------------------
SQL code

select 
    datediff(day,getdate(),last_test_date) as 剩余天数
from equip_regular_check order by 1