Oracle两个日期类型字段怎么比较大小

like8888888 2011-03-29 09:51:50
A字段 B字段
2008-8-24 2010-9-1

我要做的就是比较A字段是否大于B字段。
麻烦各位大虾能写得详细点..
...全文
44719 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
xietianaa 2013-09-29
  • 打赏
  • 举报
回复
date '1992-1-1'
tongxiaowei111 2013-09-05
  • 打赏
  • 举报
回复
如果表字段和指定日期比较,怎么比较 例如字段 A> 2012-12-1
culinapplefzu 2011-04-01
  • 打赏
  • 举报
回复
直接比较where col_a>col_b;
winer1220 2011-04-01
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 duqiangcise 的回复:]
引用楼主 like8888888 的回复:
A字段 B字段
2008-8-24 2010-9-1

我要做的就是比较A字段是否大于B字段。
麻烦各位大虾能写得详细点..

如果A,B字段不是定义为date类型的话,建议使用to_date(getdate(),'yyyy-MM-dd'),让人看起来更一目了然。从大的说:1.养成好的编程习惯;从小的说:1.提高数据查询性能。即使你不显示进……
[/Quote]

up
sjq521521 2011-04-01
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 bobo12082119 的回复:]
SQL code

--将日期列转换为指定格式,再进行比较!
select col_1,col_2 from table_name
where to_date(date_1,'yyyy-mm-dd') > to_date(date_1,'yyyy-mm-dd');


日期比较
[/Quote]
zhouhaochen 2011-03-30
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 yejihui9527 的回复:]

引用 1 楼 luoyoumou 的回复:
-- 直接比较!

where col_a>col_b;

+1
[/Quote]
+2
chao881208 2011-03-30
  • 打赏
  • 举报
回复
LZ你的表中日期是什么格式的,如果是日期可以直接比较或者用trunc(date)来截取比较。
如果是字符串那么就用to_date(date,'YYYY-MM-DD')来转换成日期
Megan2008 2011-03-29
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 im8888 的回复:]
可以直接比较,
或者使用 to_char(字段,'yyyy-mm-dd') 或者 to_date(字段,'yyyy-mm-dd')
转换再比较。
[/Quote]
同意
IM8888 2011-03-29
  • 打赏
  • 举报
回复
可以直接比较,
或者使用 to_char(字段,'yyyy-mm-dd') 或者 to_date(字段,'yyyy-mm-dd')
转换再比较。
304的的哥 2011-03-29
  • 打赏
  • 举报
回复

--将日期列转换为指定格式,再进行比较!
select col_1,col_2 from table_name
where to_date(date_1,'yyyy-mm-dd') > to_date(date_1,'yyyy-mm-dd');


日期比较
vber1010 2011-03-29
  • 打赏
  • 举报
回复
直接比较,即使你这两个字段是字符串,也可以直接比较大小。
dawugui 2011-03-29
  • 打赏
  • 举报
回复
就是,直接比较即可.
yejihui9527 2011-03-29
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 luoyoumou 的回复:]
-- 直接比较!

where col_a>col_b;
[/Quote]
+1
changhe325 2011-03-29
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 luoyoumou 的回复:]

-- 直接比较!

where col_a>col_b;
[/Quote]up
luoyoumou 2011-03-29
  • 打赏
  • 举报
回复
-- 比较:没有什么好啰嗦滴
luoyoumou 2011-03-29
  • 打赏
  • 举报
回复
-- 直接比较!

where col_a>col_b;
yongerman 2011-03-29
  • 打赏
  • 举报
回复
可以像数字一样直接比较的
duqiangcise 2011-03-29
  • 打赏
  • 举报
回复
[Quote=引用楼主 like8888888 的回复:]
A字段 B字段
2008-8-24 2010-9-1

我要做的就是比较A字段是否大于B字段。
麻烦各位大虾能写得详细点..
[/Quote]
如果A,B字段不是定义为date类型的话,建议使用to_date(getdate(),'yyyy-MM-dd'),让人看起来更一目了然。从大的说:1.养成好的编程习惯;从小的说:1.提高数据查询性能。即使你不显示进行转换oracle也可以通过隐式方式进行比较,但这样的比较会耗费oracle的性能。
打个比喻:就想一个人遇到问题不知道怎么解决一样,有可能你通过baidu或google同样可以解决,但这样可能会耗费你很长时间,但如果一个导师指导你一下,那么就事半功倍了。
njlywy 2011-03-29
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 im8888 的回复:]
可以直接比较,
或者使用 to_char(字段,'yyyy-mm-dd') 或者 to_date(字段,'yyyy-mm-dd')
转换再比较。
[/Quote]
+1

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧