ORACLE WITH AS 用法

技术ORACLE WITH AS 用法 ORACLE WITH AS 用法With查询语句不是以select开始的,而是以“WITH”关键字开头 可认为在真正进行查询之前预先构造了一个临时表,之后便可多

带AS用法的ORACLE

查询语句WITH不是以select开头,而是以关键字“With”开头

可以认为是在实际查询之前预先构造了一个临时表,然后可以多次用于进一步的分析处理。

WITH子句方法的优点

增加了SQL的可读性,如果构造多个子查询,结构会更清晰;更重要的是“分析一次,使用多次”,这也是它提供性能,达到“少读”目标的原因。

第一种使用子查询的方法扫描表两次,而使用WITH子句的方法只扫描表一次。这可以大大提高数据分析和查询的效率。

此外,观察WITH子句方法的执行计划,其中“SYS_TEMP_XXXX”是运行过程中构建的中间统计结果的临时表。

语法:

以tempName为(选择.)

挑选.

-化名

tmp为(从tb_name中选择*

-对于多个别名

随着

tmp as(从tb_name中选择*),

tmp2 as(从tb_name2中选择*),

tmp3 as(从tb_name3中选择*),

-相当于建了一个E临时表。

带有e as(从scott.emp e中选择*其中e.empno=7499)

从e中选择*;

-相当于搭建临时表E和d。

随着

e as(从scott.emp中选择*),

d as(从scott.dept中选择*

从e、d中选择*其中e . dept no=d . dept no;

其实就是把很多重复使用的sql语句用as放进去,取一个别名,以后查询可以用它,这样优化了大量的sql语句,就清楚了。

作为向表中插入数据的用法:

插入表2

随着

s1 as(通过rownum=10从双连接中选择rownum c1),

s2 as(通过rownum=10从双连接中选择rownum c2)

从s1 a、s2 b中选择a.c1、b.c2,其中.

等同于虚拟视图。

With短语,也称为子查询因式分解,允许您做许多事情并定义一个sql片段,该片段将被整个sql语句使用。

有时,这是为了使sql语句更易读,或者它可能位于union的不同部分,都是提供数据的一部分。

对工会特别有用。

因为union的每个部分都可能是一样的,但是如果每个部分执行一次,成本太高,所以用as这个短语就可以了,所以只需要执行一次。

如果with as短语定义的表名被调用两次以上,优化器将自动将with as短语获得的数据放入临时表中,但如果只调用一次,则不会。

Prompt物化是将短语as中的数据强制放入全局临时表中。

这种方法可以加快许多查询的速度。

随着

sql1 as(从test_tempa中选择to_char(a) s_name),

sql2 as(从test_tempb中选择to_char(b) s_name,其中不存在(从sql1中选择s_name,其中rownum=1))

从sql1中选择*

联合所有

从sql2中选择*

联合所有

从dual中选择“无记录”

不存在的地方(从sql1中选择s_name,其中rownum=1)

并且不存在(从sql2中选择s_name,其中row num=1);

with as优点

增加了sql的可读性,如果构造多个子查询,结构会更清晰;

更重要的是“分析一次,使用多次”,这也是它提供性能,达到“少读”目标的原因。

转载:https://www.cnblogs.com/mingforyou/p/8295239.html

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/117965.html

(0)

相关推荐

  • 拼多多可以用花呗吗,京东淘宝拼多多分别用什么付款

    技术拼多多可以用花呗吗,京东淘宝拼多多分别用什么付款京东是京东自己的白条或者网银还有微信拼多多可以用花呗吗,淘宝可以支付宝跟网银,
    拼多多可以微信或者支付宝还有网银。
    无论是淘宝还是京东,就目前来看,都属于两个做得非常大

    生活 2021年10月31日
  • 如何使用torch.le和le(其他)

    技术torch.le和le(other)怎么使用本篇内容主要讲解“torch.le和le(other)怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“torch.le和

    攻略 2021年12月24日
  • 怎么解决数据库中的bash: warning: setlocale问题

    技术怎么解决数据库中的bash: warning: setlocale问题这篇文章主要讲解了“怎么解决数据库中的bash: warning: setlocale问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟

    攻略 2021年11月16日
  • 分析CSS动画Transition与Animation

    技术分析CSS动画Transition与Animation本篇内容主要讲解“分析CSS动画Transition与Animation”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习

    攻略 2021年11月6日
  • 适用于Python的编写工具有哪些

    技术适用于Python的编写工具有哪些本篇内容主要讲解“适用于Python的编写工具有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“适用于Python的编写工具有哪些”吧

    攻略 2021年11月3日
  • audit审计什么意思(audit审计数据库)

    技术audit审计方法是什么本篇内容介绍了“audit审计方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! au

    攻略 2021年12月22日