Oracle存储过程迁移ODPS-03(专有云):ODPS1.0支持exists语法
专有云目前还有不少ODPS1.0版本,主要是应对V3之前的平台版本。这个版本的ODPS不支持exists语法,如何换种写法实现。
-- ODPS1.0 如何实现 exists 语法 -- oracle select col1,col2,col3,col4 from (select t1.col1,t1.col2,t2.col3,t2.col4 from table1 t1 INNER JOIN table2 t2 ON t1.col1 = t2.col1 WHERE (t2.col3 between '14400000000' and '14499000000') and (NOT EXISTS (SELECT 1 FROM table3 t3 WHERE t1.col2 = t3.col2 AND GREATEST(t3.col5,t3.col6,t3.col7) <= sysdate() AND GREATEST(t3.col5,t3.col6,t3.col7) >= sysdate() - interval '1095' day))) foo group by col1 order by col1; -- odps select col1,col2,col3,col4 from (select t1.col1,t1.col2,t2.col3,t2.col4 from table1 t1 inner join table2 t2 ON t1.col1 = t2.col1 left outer join( SELECT col2 FROM table3 t3 WHERE GREATEST(t3.col5,t3.col6,t3.col7) <= getdate() AND GREATEST(t3.col5,t3.col6,t3.col7) >= getdate() - 1095) t3 ON t1.col2 = t3.col2 WHERE (t2.col3 >= '14400000000' and t2.col3 <='14499000000') and t3.col2 is null ) foo group by col1 order by col1; -- 暮角 15901445705 update at 20181224
exists写法在oracle上其实就是可用,可不用的写法。主要是使用exists语法的查询效率高于JOIN,所以,很多人在使用。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Oracle存储过程迁移ODPS-02(专有云):循环逻辑修改一例(构造代码表)
总有同学提问,说我原来在oracle的存储过程中的循环现在maxcompute支持了,我的程序怎么迁移。这个问题其实非常难以回答,一般来说99%的oracle的代码都可以通过maxcompute的SQL和函数来替代,这个也包括一般的循环语句要解的问题。 下面这个例子就是一个例子,原来的存储过程使用循环来为多级组织机构代码构建一个新的代码表,因为有多层级,所以使用了循环。 下面是原来存储过程的代码: -----------------------使用循环进行更新,需要增加v_pid与v_id两个辅助字段---------------------------- update ZZJG_DM a set v_pid=pid; update ZZJG_DM a set v_id=id; update ZZJG_DM a set JBDM=null; update ZZJG_DM a set JCDM=1; set row_count = -1; while row_count != 0 do update ZZJG_DM a, ZZJG_DM b, (select id,pid,to_char...
- 下一篇
日志上云利器 - Aliyun LOG Java Producer
背景 日志无处不在,它作为记录世间万物变化的载体,在运维、研发、运营、安全、BI、审计等领域有着广泛的应用场景。 阿里云日志服务是日志类数据的一站式服务平台,其核心组件 LogHub 凭借着高吞吐、低延迟、可自动伸缩等特性,逐渐成为大数据处理领域特别是实时数据处理场景下的基础设施。那些运行在 Flink、Spark、Storm 等大数据计算引擎中的任务往往会将数据处理结果或中间结果实时写入 LogHub,下游系统基于 LogHub 中的数据提供查询分析、监控告警、机器学习、迭代计算等能力。下图展示了面向 LogHub 的大数据处理系统架构图。 要让整个系统稳定地运行,提供便捷高效的数据写入手段是前提。直接使用 API 或 SDK 往往无法满足大数据场景下对数据写入能力的要求,在这样的背景下 Aliyun LOG Java Produce
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS关闭SELinux安全模块
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7,8上快速安装Gitea,搭建Git服务器