比如'2003-06-10' - '2003-06-09'的结果为1
我试过如果两个时间在一个月内,则结果正确,可是如果是跨月或者跨年的话,结果可就会不对了,我该怎么做呢?
as/400的DB2版本V3r1
CCBZZP 回复于:2003-06-11 10:48:45
SELECT (DAYS(CURRENT TIMESTAMP) -DAYS(DAT_IN)) ,DAT_IN FROM DB2ADMIN.BSEMPMS
mymm 回复于:2003-06-11 23:15:29
如下:
D:>;db2 values days('2003-06-11') - days('2002-12-31')
1
-----------
162
1 条记录已选择。
==============================================
D:\dbtmp>;db2 values dayofyear(current timestamp)
1
-----------
162
1 条记录已选择。
==============================================
Successful!
ironteeth 回复于:2003-06-11 23:53:28
原来要用days这个函数啊,终于解决了,心情好舒畅啊,谢谢各位的热心帮助!
Pythagoras 回复于:2003-06-12 22:40:58
不能跨年的。
mymm 回复于:2003-06-13 08:22:15
可以跨年的,以上的例子没看到吗?
CCBZZP 回复于:2003-06-17 17:10:34
引用:原帖由 "Pythagoras"]不能跨年的。
发表:
浅龙八怪 回复于:2003-07-02 10:46:23
可以跨年阿
足球小子 回复于:2003-07-02 11:58:34
呵呵,又学了一招!好高兴啊!
CCBZZP 回复于:2003-07-04 16:30:34
不錯
duckweeds 回复于:2003-08-08 14:51:52
不错,谢谢Mymm。
xipeng 回复于:2003-08-08 15:38:21
函数days用的一个基准的时间是什么?
比如days('2003-01-11')出来的是个天数,是和哪个时间相比较的天数呢?
mymm 回复于:2003-08-08 17:01:11
DAYS函数返回日期的整数表示。
要计算两个日期之间的天数,可以:
days (current date) - days (date('2000-9-1'))
xipeng 回复于:2003-08-08 17:41:35
是date返回日期的整数表示吧。
你试试days('2000-9-1')就明白我的意思了。
dennisfox 回复于:2003-08-14 12:06:48
0001-01-01
KevinAN 回复于:2003-09-09 11:27:09
本文摘录于 IBM DevelopWorks 网站, 对处理时间的问题有很大的帮助:
这篇短文是为那些刚接触 DB2 并想理解如何操作日期和时间的新手而写的。使用过其它数据库的大部分人都会很惊喜地发现在 DB2 中操作日期和时间是多么简单。
要使用 SQL 获得当前的日期、时间及时间戳记,请参考适当的 DB2 寄存器:
SELECT current date FROM sysibm.sysdummy1
SELECT current time FROM sysibm.sysdummy1
SELECT current timestamp FROM sysibm.sysdummy1
sysibm.sysdummy1 表是一个特殊的内存中的表,用它可以发现如上面演示的 DB2 寄存器的值。您也可以使用关键字 VALUES 来对寄存器或表达式求值。例如,在 DB2 命令行处理器(Command Line Processor,CLP)上,以下 SQL 语句揭示了类似信息:
| 论坛热门帖子: | [lch203] 写得蛮好的linux学习笔记(10-21) [黑马制造] 学习java的30个目标(10-19) [笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19) [udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18) [沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18) |
| TAG标签: | 日期 两个 获得 如何 时间 返回 使用 回复 函数 表示 |
注册
个人空间
