娱乐汇资讯台
娱乐汇资讯台

sql比较两个列日期大小,sql 日期比较

娱乐汇30

使用SQL语句比较两个日期列的大小

日期就坦世册是一个实数,整数部分就是今天距1900-01-01那天的天数。小返历数部分表部时间

小时数=24*小数部分。 select

cast('1900-01-01

00:00:00.000'

as

datetime)

+

1.1

结果为1900-01-02

02:24:00.000 所以,直接比较大小就行了(where 日期字段让宏1

日期字段1)。

sql日期比较大小

要用SQL来比较日期大小可使用 DATEDIFF 函数 [日期和时间],该函数的功能:返回两个日期之间的间隔。

语法: DATEDIFF ( date-part, date-expression-1, date-expression-2 )

date-part : year | quarter | month | week | day | hour | minute | second | millisecond

参数 date-part 指定要测量其间隔的日期部分。

有关日期部分的详细信息,请参见日期部分。

date-expression-1 某一间隔的起始日期。从 date-expression-2 中减去该值,返回两个参数之间 date-parts 的天数。

date-expression-2 某一间隔的结顷拦携束日期。从该值中减去 Date-expression-1,返回两个参数之间 date-parts 的天数。

用法 此函数计算两个指定日期之间日期部分的数目。结果为日期部分中等于(date2 - date1)的有符号的整数值。

当结果不是日期部分的偶数倍时,DATEDIFF 将被截断而不是被舍入。

当使用 day 作为日期部分时,DATEDIFF 返回两个指定的时间之间(包括第二个日期但不包括第一个日期)的午夜数。

当使用 month 作为日期部分时,DATEDIFF 返回两个日期之间(包括第二个日期但不包括第一个日期)出现的月的第一天的数目。

当使用 week 作为日期部分时,DATEDIFF 返回两个日期(包括第二个日期但不包括第一衡樱个日期)之间星期日的数目。

对于更小的时间单位存在溢出值:

milliseconds 24 天

seconds 68 年

minutes 4083 年

others 没有溢出限制

如果超出这雀伏些限制,此函数将返回溢出错误。

标准和兼容性 SQL/92 Transact-SQL 扩展。

SQL/99 Transact-SQL 扩展。

Sybase 与 Adaptive Server Enterprise 兼容。

下面示例的语句返回 1: SELECT datediff( hour, '4:00AM', '5:50AM' )

下面的语句返回 102: SELECT datediff( month, '1987/05/02', '1995/11/15' )

下面的语句返回 0: SELECT datediff( day, '00:00', '23:59' )

下面的语句返回 4: SELECT datediff( day,'1999/07/19 00:00','1999/07/23 23:59' )

下面的语句返回 0: SELECT datediff( month, '1999/07/19', '1999/07/23' )

下面的语句返回 1: SELECT datediff( month, '1999/07/19', '1999/08/23' )

SQL语句 怎样比较两个日期的大小,简单一点的

我刚刚写了一段代没哗码你参考一下 希望对你有帮助

import java.text.SimpleDateFormat;

import java.util.Date;

public class Date_Test {

public static void main(String[] args) {

Date d1 = new Date(); //第一个时间

Date d2 = new Date(); //第二个时粗嫌间

SimpleDateFormat f = new SimpleDateFormat("hhmmss"); //格式化为 hhmmss

int d1Number = Integer.parseInt(f.format(d1).toString()); //将第一个时间格式化后转为枯凳行int

int d2Number = Integer.parseInt(f.format(d2).toString()); //将第二个时间格式化后转为int

if(d1Numberd2Number){

System.out.println("时间d1大");

System.out.println(d1Number);

}

else{

System.out.println("时间d2大");

System.out.println(d2Number);

}

}

}

标签:#sql比较两个列日期大小