您的当前位置:首页正文

数据库中的一些时间问题

2023-10-13 来源:伴沃教育
获得当前时间也可以得到其它天的当前时间。

◆在java文件中:

Calender ca1=Calender.getInstance();//getInstance()使用默认时区和语言环境获得一个日历。 ca1.add(Calendar.DATE,+1);//这是得到明天这个时候的时间。 System.out.println(cal.getTime()); 注:

add(int field, int amount) 根据日历的规则,为给定的日历字段添加或减去指定的时间量。时间量单位为天。 ◆在oracle数据库中:

selectsysdate+1from dual;//这是得到明天这个时候的时间。sysdate表示当前系统时间。

◆在SQLServer 2008数据库中:

selectsysdatetime()fromusers;//当前系统时间

selectdateadd(day,1,getdate());//这是得到第二天的当前时间,日期加1.getdate()和sysdatetime()一样只不过返回的精度差点。 语法:

DATEADD (datepart, number, date) datepart: datepart year quarter month dayofyear day week weekday hour minute second millisecond microsecond nanosecond yy, yyyy qq, q mm, m dy, y dd, d wk, ww dw, w hh mi, n ss, s ms mcs ns 缩写 number是一个表达式,可以解析为与date的datepart相加的 int。用户定义的变量是有效的。 date是一个表达式,可以解析为time、date、smalldatetime、datetime、datetime2或datetimeoffset值。date可以是表达式、列表达式、用户定义的变量或字符串文字。如果表达式是字符串文字,则它必须解析为一个datetime值。为避免不确定性,请使用四位数年份。

返回类型:

返回数据类型为 date 参数的数据类型,字符串文字除外。

字符串文字的返回数据类型为 datetime。如果字符串文字的秒数小数位数超过三位 (.nnn) 或包含时区偏移量部分,将引发错误。 如:

SELECT DATEADD(month, 1, '2006-08-30') SELECT DATEADD(month, 1, '2006-08-31') ◆在Mysql中: select now();

select now()-interval 1 second;//这是将当前时间减1秒,用”+”就是加1秒。 select now()-interval 1 day;//这是将当前时间减1天,用”+”就是加1天。

select Date_add(now(),interval -1 day);////这是将当前时间减1天,写1就是加1天。和上面的一样。 如:

DATE_ADD表示加。是根据第1个数字的符号定的。不写表示加 DATE_SUB表示减。是根据第1个数字的符号定的。不写表示减 mysql> SELECT \"1997-12-31 23:59:59\" + INTERVAL 1 SECOND; -> 1998-01-01 00:00:00

mysql> SELECT INTERVAL 1 DAY + \"1997-12-31\"; -> 1998-01-01

mysql> SELECT \"1998-01-01\" - INTERVAL 1 SECOND; -> 1997-12-31 23:59:59

mysql> SELECT DATE_ADD(\"1997-12-31 23:59:59\AL 1 SECOND); -> 1998-01-01 00:00:00

mysql> SELECT DATE_ADD(\"1997-12-31 23:59:59\AL 1 DAY); -> 1998-01-01 23:59:59

mysql> SELECT DATE_ADD(\"1997-12-31 23:59:59\AL \"1:1\" MINUTE_SECOND); -> 1998-01-01 00:01:00

mysql> SELECT DATE_SUB(\"1998-01-01 00:00:00\AL \"1 1:1:1\" DAY_SECOND); -> 1997-12-30 22:58:59

mysql> SELECT DATE_ADD(\"1998-01-01 00:00:00\AL \"-1 10\" DAY_HOUR); -> 1997-12-30 14:00:00

mysql> SELECT DATE_SUB(\"1998-01-02\AL 31 DAY); -> 1997-12-02

mysql> SELECT EXTRACT(YEAR FROM \"1999-07-02\"); -> 1999

mysql> SELECT EXTRACT(YEAR_MONTH FROM \"1999-07-02 01:02:03\"); -> 199907

mysql> SELECT EXTRACT(DAY_MINUTE FROM \"1999-07-02 01:02:03\"); -> 20102

mysql> select DATE_ADD('1998-01-30', Interval 1 month); -> 1998-02-28

因篇幅问题不能全部显示,请点此查看更多更全内容