日期相减

[复制链接]
查看11 | 回复9 | 2011-1-4 10:35:48 | 显示全部楼层 |阅读模式
请教大家怎么算日期相减, 只要有天就行,
比如,‘2010-11-20’-‘2010-10-1’=? 天
先谢谢啦!!!
回复

使用道具 举报

千问 | 2011-1-4 10:35:48 | 显示全部楼层


SQL> select date '2010-11-20' - date '2010-10-1' diff from dual;
DIFF
----------
50
SQL>

回复

使用道具 举报

千问 | 2011-1-4 10:35:48 | 显示全部楼层
SQL> select timestamp '2010-11-20 21:21:10' - timestamp '2010-10-1 10:10:10' dif
f from dual;
DIFF
---------------------------------------------------------------------------
+000000050 11:11:00.000000000
bell版主,想问下,这中情况怎么样将结果中的0串去掉。。。谢谢。。。
回复

使用道具 举报

千问 | 2011-1-4 10:35:48 | 显示全部楼层
SQL> select trim('0' from timestamp '2010-11-20 21:21:10' - timestamp '2010-10-1 10:10:10' )dif from dual;
DIF
--------------------
+000000050 11:11:00.
回复

使用道具 举报

千问 | 2011-1-4 10:35:48 | 显示全部楼层
转为date,你这样做还不如用date呢
回复

使用道具 举报

千问 | 2011-1-4 10:35:48 | 显示全部楼层
原帖由 小沙漏 于 2011-1-12 12:03 发表
SQL> select timestamp '2010-11-20 21:21:10' - timestamp '2010-10-1 10:10:10' dif
f from dual;
DIFF
---------------------------------------------------------------------------
+000000050 11:11:00.000000000
bell版主,想问下,这中情况怎么样将结果中的0串去掉。。。谢谢。。。



SQL> select ltrim(substr(timestamp '2010-11-20 21:21:10' - timestamp '2010-10-1 10:10:10',2, 10), '0') diff from dual;
DIFF
----
50
SQL>


回复

使用道具 举报

千问 | 2011-1-4 10:35:48 | 显示全部楼层
兔兔,其实我只是想到了怎么样计算多少天多少时。。。。LZ说的只是计算天而已。。。
呵呵。。。
回复

使用道具 举报

千问 | 2011-1-4 10:35:48 | 显示全部楼层
谢谢bell,其实我是想计算多少天多少时,是不是用substr就是最好的方法了呢?
回复

使用道具 举报

千问 | 2011-1-4 10:35:48 | 显示全部楼层
原帖由 小沙漏 于 2011-1-12 12:50 发表
兔兔,其实我只是想到了怎么样计算多少天多少时。。。。LZ说的只是计算天而已。。。
呵呵。。。

SQL>select extract (dayfrom (timestamp '2010-11-20 21:21:10' - timestamp '2010-10-1 10:10:10')) diff from dual;

DIFF
----------
50
回复

使用道具 举报

千问 | 2011-1-4 10:35:48 | 显示全部楼层
学习了!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行