SQL是高級的非過程化編程語言,一般針對數(shù)據(jù)庫進(jìn)行操作。
定義:datediff(day/month/year,startdate,enddate)
日期函數(shù):(要返回的天數(shù)/月數(shù)/年數(shù),開始日期,結(jié)束日期)
具體形式:select 1,2,datediff(day,1,2) 天數(shù) from aa
還有一些方法:
使用DATEDIFF函數(shù)可以求兩個日期之間相差的天數(shù)。
MySQL中的DATEDIFF函數(shù)僅需要兩個參數(shù) (即要計算相差天數(shù)的兩個日期),第一個參數(shù)應(yīng)是兩個日期中較小的值,以避免出現(xiàn)負(fù)值(SQL Server中正好相反)。
在SQL Server中,可以指定該函數(shù)返回值所表示的類型(在這個例子中,返回以“日”為單位的差)。下面的解決方案采用了SQL Server的版本:
1 select datediff(day,allen_hd,ward_hd)
2 from (
3 select hiredate as ward_hd
4 from emp
5 where ename = 'WARD'
6 ) x,
7 (
8 select hiredate as allen_hd
9 from emp
10 where ename = 'ALLEN'
11 ) y
MySQL用戶只需去掉該函數(shù)的第一個參數(shù),交換一下傳遞ALLEN_HD和WARD_HD的順序即可。