SQL语句 with as 用法
一直以来很少在SQL中使用过with as 的用法,现在打算记录这条语句的使用方法。
WITH AS短语,也叫做子查询部分(subquery factoring),是用来定义一个SQL片断,该SQL片断会被整个SQL语句所用到。这个语句算是公用表表达式(CTE)。
比如
with A as (select * from class)
select *from A
这个语句的意思就是,先执行select * from class 得到一个结果,将这个结果记录为A ,在执行select *from A 语句。A 表只是一个别名。
也就是将重复用到的大批量 的SQL语句,放到with as 中,加一个别名,在后面用到的时候就可以直接用。
对于大批量的SQL数据,起到优化的作用。
二、with的相关总结(摘录别人博客)
1.使用with子句可以让子查询重用相同的with查询块,通过select调用(with子句只能被select查询块引用),一般在with查询用到多次情况下。在引用的select语句之前定义,同级只能定义with关键字只能使用一次,多个用逗号分割。
2.with子句的返回结果存到用户的临时表空间中,只做一次查询,反复使用,提高效率。
3.在同级select前有多个查询定义的时候,第1个用with,后面的不用with,并且用逗号隔开。
4.最后一个with 子句与下面的查询之间不能有逗号,只通过右括号分割,with 子句的查询必须用括号括起来
5.如果定义了with子句,而在查询中不使用,那么会报ora-32035 错误:未引用在with子句中定义的查询名。(至少一个with查询的name未被引用,解决方法是移除未被引用的with查询),注意:只要后面有引用的就可以,不一定非要在主查询中引用,比如后面的with查询也引用了,也是可以的。
6.前面的with子句定义的查询在后面的with子句中可以使用。但是一个with子句内部不能嵌套with子句。
7.当一个查询块名字和一个表名或其他的对象相同时,解析器从内向外搜索,优先使用子查询块名字。
8.with查询的结果列有别名,引用的时候必须使用别名或*。
SQL语句 with as 用法相关推荐
- SQL语句 SELECT LIKE用法详解
在SQL结构化查询语言中,LIKE语句有着至关重要的作用. LIKE语句的语法格式是:select * from 表名 where 字段名 like 对应值(子串),它主要是针对字符型字段的,它的作用 ...
- 总结一下SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法
总结一下SQL语句中引号(').quotedstr().('').format()在SQL语句中的用法以 及SQL语句中日期格式的表示(#).('') 在Delphi中进行字符变量连接相加时单引号用( ...
- (转载)总结一下SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法...
总结一下SQL语句中引号(').quotedstr().('').format()在SQL语句中的用法 总结一下SQL语句中引号(').quotedstr().('').format()在SQL语句中 ...
- SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法
总结一下SQL语句中引号(').quotedstr().('').format()在SQL语句中的用法总结一下SQL语句中引号(').quotedstr().('').format()在SQL语句中的 ...
- sql语句中exists用法详解
文章目录 一.语法说明 exists: not exists: 二.常用示例说明 1.查询a表在b表中存在数据 2.查询a表在b表中不存在数据 3.查询时间最新记录 4.exists替代distinc ...
- 总结一下SQL语句中引号()、quotedstr()、()、format()在SQL语句中的用法
View Code 总结一下SQL语句中引号('').quotedstr().('''').format()在SQL语句中的用法以及SQL语句中日期格式的表示(#).('''')在Delphi中进行字 ...
- delphi去掉字段前后的引号_Delphi编程SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法...
Delphi编程SQL语句中引号(').quotedstr().('').format()在SQL语句中的用法 (2011-06-23 12:14:13) 标签: delphi编程 sql语句引号 q ...
- (转载)总结一下SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法
总结一下SQL语句中引号(').quotedstr().('').format()在SQL语句中的用法以 及SQL语句中日期格式的表示(#).('') 在Delphi中进行字符变量连接相加时单引号用( ...
- sql语句中with用法
with嵌套子查询用法 在比较复杂,数据量大的情况下,为了提高查询效率,需要用到一些子查询.一层一层嵌套的子查询不方便,显得sql语句比较繁琐.可以用 with语句 构建临时表查询:具体用法如下: - ...
最新文章
- 机器学习算法与理论用到的数学知识
- 松耦合和紧耦合的架构设计、性能对比
- 【网络安全威胁】企业风险远不止勒索软件,盘点当今企业面临的四种安全威胁
- 【opencv4】opencv教程 C++ 4、Mat对象(深拷贝:clone()、copyTo(),create()创建图片,zeros()、eye()初始化空白图像,Scalar()创建向量)
- 【JAVA并发编程实战】3、同步容器
- 为什么你设计的网页不够惊艳?
- 5. soapui 测试
- 中学生计算机制作大赛作品,“全国中小学电脑制作大赛”全校征集啦!
- 有实用简单的PS小技巧吗?下面几个小技巧你知道几个呢?
- 女程序员写代码被骂,把领导萌死,成功治愈“选择困难症”
- 每天看一个fortran文件(2)
- 上一页 1 2 3 ... 10 下一页 固定分页
- 剑指offer中使用辅助栈方法的题目的整理(待更)
- VS 2017 解决 C2001错误 常量中有换行符
- 用一条SQL 语句 查询出每门课都大于80 分的学生姓名
- 牛客网刷题-java
- python 制作抽奖_python制作抽奖程序代码详解
- 3.7V锂电池充电详解
- 混音 文件 生成 linux,linux 混音
- 特别策划|5G最新进展深度解析2022版—技术篇(71页附下载)