请问我要怎么做才能直接用大于小于号查询日期类型的列?

孙月魂 2013-10-21 10:30:21
比如:
select * from A where fd_date > '2013-10-21'
以前我这个是可以直接搜出来日期大于2013-10-21的数据的,但重装系统之后就不可以了~、
请问是哪里出了问题?是要修改注册表什么的吗?
...全文
204 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
singsongs 2013-10-24
  • 打赏
  • 举报
回复
设置成yyyy-mm-dd,刚才敲错了。要是yyyy/mm/dd,那你应该用‘2013/09/23’这种格式查。
singsongs 2013-10-24
  • 打赏
  • 举报
回复
设置一下session的日期格式alter session set nls_date_format='yyyy/mm/dd',或者修改数据库的日期格式(不建议,除非是初装,没有业务数据),改成你想要的就可以。你两次装的oracle默认的日期格式应该不同。虽然这个日期格式可以修改,但是还是建议在使用date类型数据的时候,用to_date函数格式化一下,否则数据在数据库的日期格式变化后,很容易出问题。
  • 打赏
  • 举报
回复
select * from A where fd_date > to_date('2013-10-21','yyyy-mm-dd');还是建议用这个、
qinglang1987 2013-10-23
  • 打赏
  • 举报
回复
date 跟 string 类型转化下就好了
善若止水 2013-10-23
  • 打赏
  • 举报
回复
还是先转换为data类型进行比较吧
淡淡的小青年 2013-10-23
  • 打赏
  • 举报
回复
应该是你系统时间格式和你缩写的比较的值不一样吧。 select * from table where to_char(column,'YYYYMMDD')>'20131022'
孙月魂 2013-10-23
  • 打赏
  • 举报
回复
引用 8 楼 HJ_daxian 的回复:
暂时没听过可以改注册表 能够自动转换成时间格式的 如果要简写比较 直接用date转换 fd_date > date'2013-10-21'
多谢
醉爱梁静茹 2013-10-21
  • 打赏
  • 举报
回复
fd_date>to_date('2013-10-21','YYYY-MM-DD')
孙月魂 2013-10-21
  • 打赏
  • 举报
回复
引用 5 楼 lyliu602 的回复:
[quote=引用 4 楼 speak13579 的回复:] [quote=引用 2 楼 lyliu602 的回复:] 这个和你重做系统没有关系吧
有关系,我重做之前没事啊[/quote] “fd_date > '2013-10-21' ” fd_date是date类型,你不加to_date? 楼主觉得date类型和字符类型能一样吗? 建议如下方法:fd_date > to_date('2013-10-21','yyyy-mm-dd'); [/quote] 额,我也不知道怎么搞的,反正以前就是能啊~算了,看来现在也只能这么用了。。。多谢
无敌小二傻 2013-10-21
  • 打赏
  • 举报
回复
引用 4 楼 speak13579 的回复:
[quote=引用 2 楼 lyliu602 的回复:] 这个和你重做系统没有关系吧
有关系,我重做之前没事啊[/quote] “fd_date > '2013-10-21' ” fd_date是date类型,你不加to_date? 楼主觉得date类型和字符类型能一样吗? 建议如下方法:fd_date > to_date('2013-10-21','yyyy-mm-dd');
孙月魂 2013-10-21
  • 打赏
  • 举报
回复
引用 2 楼 lyliu602 的回复:
这个和你重做系统没有关系吧
有关系,我重做之前没事啊
孙月魂 2013-10-21
  • 打赏
  • 举报
回复
引用 1 楼 huangzifu 的回复:
fd_date如果是时间日期类型, 则select * from A where fd_date > to_date('2013-10-21','yyyy-mm-dd'); 如果是字符串, 则select * from A where fd_date > to_char('2013-10-21','yyyy-mm-dd')
没有啊!我fd_date是date类型,我以前根本不需要加to_date,直接>'2013-10-21'就可以了,我貌似记得是要改个注册表什么的。。。
无敌小二傻 2013-10-21
  • 打赏
  • 举报
回复
这个和你重做系统没有关系吧
huangzifu 2013-10-21
  • 打赏
  • 举报
回复
fd_date如果是时间日期类型, 则select * from A where fd_date > to_date('2013-10-21','yyyy-mm-dd'); 如果是字符串, 则select * from A where fd_date > to_char('2013-10-21','yyyy-mm-dd')
  • 打赏
  • 举报
回复
暂时没听过可以改注册表 能够自动转换成时间格式的 如果要简写比较 直接用date转换 fd_date > date'2013-10-21'
版本:presto-server-0.214.tar软件版本 presto-cli-0.214-executableCentOS71、presto的起因 hadoop ---hdfs----MR(java)-----hivehive底层原理用MR,速度比较慢,公司hadoop集群主要集中于晚上到凌晨,平日工作时间负载不是很高。但在工作时间内,公司业务人员有实时查询的需求,现在主要借助于hive提供业务人员的查询。hive是基于MR类的SQL查询工具,他会输入的查询SQL解析为MapReduce,能极大的降低使用大数据门槛,让一般的业务人员可以直接准对大数据进行查询,但是有一个利弊,它的查询基于MR,会让人等待比较着急,等待的时间可能是几个小时或者一天。 spark基于内存提高改良的hive,sql,现在factbook在hive上面开发一套利器,准对hive可以通过sql语句快速查询,presto。2、Facebook为何开发Presto  Facebook的2011的数据仓库存储在少量大hadoopfs集群,Hive是FaceBook在几年前专门为Hadoop打造的一款数据仓库工具,在以前,facebook的科学家和分析师一直靠hive进行数据分析.但hive使用MR作为底层计算框架,是专为批处理设计的,但是随着数据的不断增多,使用hive进行一个简单的数据查询可能要花费分钟或者几个小时,显然不能满足查询需求,FaceBooke也调研了其他比hive更快的工具,但是他们需要在功能有限的条件下简单操作,以至于无法操作Facebook庞大的数据要求。2012年开始研究自己的框架--presto,每日可以超过1pb查询,而且速度比较快,faceBook声称Presto的性能比hive要好上10倍或者100倍,presto和hive都是facebook开发的 Presto是一个开源的分布式SQL查询引擎,适用于交互式查询,数据量支持GB到PB字节。Presto的设计和编写完全是为了解决Facebook这样规模的商业数据仓库交互式分析和处理速度的问题Presto可以什么 Presto支持在线数据查询,包括Hive kafka Cassandra关系数据库以及专门数据存储,一条Presto查询可以将多个数据源进行合并,可以跨越整个组织进行分析。Presto以分析师的需求作为目标,他们期望相应速度小于1秒到几分钟,Presto要么在使用速度的快的昂贵的商业方案,提高内存,要么是消耗大量的硬件进行快速查询。(128G 64G)本套课程教给如何在企业环境中使用Presto技术。

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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