oracle中问题处理

ぃ、小莉子 提交于 2020-01-19 05:16:01

 之前用的大都是mysql数据库,但是现在所处公司用的数据库是oracle,在开发过程中遇到不少麻烦,因为之前mysql可以用的函数在oracle里面不适用,所以以下将研究在平时在开发过程中所遇到的oracle的sql编写过程,将一些遇到的难题记录下,在以后的开发过程中减少麻烦,以免四处求助却没有效果。

1、一个code对应多个开始时间(begindate),按code分组查询,如果一组里面的begindate中包含今天的时间,我就取出这一组的sysdate作为begindate,如果不包含,我就取出min(begindate)。

select R1.code,R1.max_time,R1.min_time,R1.time_set,FIND_IN_SET(sysdate,R1.time_set) as isContainSysTime,
case when "sysdate(从前台获取当前时间字符串)" like  isContainSysTim
then to_char(sysdate,'yyyy-mm-dd')
ELSE
    to_char(min_time,'yyyy-mm-dd')
end as begin_time
from
(
select code,
ws_concat(begin_time) as time_set,
min(begin_time) as min_time,
max(begin_time) as max_time
from code_begintime GROUP BY code
) as R1

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!