-
2021-12-10 17:24:34
WITH AS短语,也叫做子查询部分,定义一个SQL片断后,该SQL片断可以被整个SQL语句所用到。有的时候,with as是为了提高SQL语句的可读性,减少嵌套冗余。
在标准的数据库中,如hive,Oracle,DB2,SQL SERVER,PostgreSQL都是支持WITH AS 语句进行递归查询。只有MySQL是不支持的。
with A as (select distinct(sno),sname,ssex,sclass from student), B as (select sno,cno,degree from score ) --使用上面定义好的A,B select * from A,B where A.sno =B.sno
更多相关内容 -
with用法小结
2018-01-27 01:18:10文章转自:...版权归原作者! 一、with表拥有某物 Mary married a man with a lot of money . 马莉嫁给了一个有着很多钱的男人。 I often dream of a big house with a nice garden .文章转自:https://wenku.baidu.com/view/17e91c6fa98271fe910ef9ee.html
版权归原作者!
一、with表拥有某物
Mary married a man with a lot of money .
马莉嫁给了一个有着很多钱的男人。
I often dream of a big house with a nice garden .
我经常梦想有一个带花园的大房子。
The old man lived with a little dog on the lonely island .
这个老人和一条小狗住在荒岛上。二、with表用某种工具或手段
I cut the apple with a sharp knife .
我用一把锋利的刀削平果。
Tom drew the picture with a pencil .
汤母用铅笔画画。三、with表人与人之间的协同关系
make friends with sb
talk with sb
quarrel with sb
struggle with sb
fight with sb
play with sb
work with sb
cooperate with sb
I have been friends with Tom for ten years since we worked with each other, and I have never quarreled with him .
自从我们一起工作以来,我和汤姆已经是十年的朋友了,我们从没有吵过架。四、with 表原因或理由
John was in bed with high fever .
约翰因发烧卧床。
He jumped up with joy .
他因高兴跳起来。
Father is often excited with wine .
父亲常因白酒变的兴奋。五、with 表“带来”,或“带有,具有”,在…身上,在…身边之意
The girl with golden hair looks beautiful .
那个金头发的女孩看起来漂亮。
The famous director will come to the meeting with the leading actor and
actress.
那个有名的导演将带着男女主角来到会场。
A storm with a hurricane has come onto its way .
带有飓风的风暴要来了。
Do you have money with you .
身上带着钱吗?
Take the umbrella with you in case it rains .
随身带伞,以防下雨。六、with表想法,信念,态度与…一致
I agree with you on how to deal with it .
关于此事如何处理,我同意你的看法。
I believe with the headmaster that a good teacher should not only teach a student what to learn but also how to learn it .
我相信校长所说,一个好老师不但教学生学什么,而且应教学生怎么去学。七、with表示让步,“虽有,尽管”
With all his money and fame, he is not happy .
有着钱和名誉,他还是不快乐。
With good teachers and warmhearted classmates ,the new comer feels lonely .
虽有着好老师和热心的同学,这个新来的还是感觉孤独。八、with表同时,或同一方向,“随着”
The temperature of cold-blooded animals change with the temperature of the surroundings .
冷血动物的体温随着周围的环境的改变而变化。
The big ship is sailing with the wind .
这个大船正随风向航行。
And with the last words , she turned away.
随着最后一句话说完,他转身离开了。九、with的复合结构表行为方式或伴随情况
1、 with + n/pron + adj.
He left the room with the door open .
门开着,他就离开了屋子。
Don’t talk with your mouse full .
嘴里满是东西时不要说话。2、with + n/pron + adv.
With the radio on ,grandma slept deeply in the chair .
收音机开者,奶奶在椅子里沉沉的睡着。
With Tom away , I always feel lonely .
汤母不在,我一直感觉孤独。3、with + n/pron + done
The fellow stood there with his hands crossed .
这个家伙两手交叉,站在那里。
The peasants have a good harvest with all the crops got in .
庄稼都收割了,农民们有了一个好收成。4、with + n/pron + to do
With this book to help you , you can finish your work as soon as possible .
有这本书来帮忙,你能尽快完成工作。
With so many problems to settle ,the new manager was too worried to eat anything .
有着太多问题要去处理,新经理担忧的吃不下任何东西。5、with + n/pron + n
The old man looks down upon everyone ,with his son chairman of the company .
因为他儿子是公司的主席,这个老头瞧不起任何人。
He was taken to hospital with his legs a mass of bleeding flesh .
他被抬到医院,他的腿血肉模糊。6、with + n/pron + 介词短语
The man left the meeting with a book in his hand .
这个男人手里拿着书离开了会议。
The woman with a diamond necklace around the neck must be wealthy .
那个脖子上带项链的女人一定很有钱。十、with其他用法主要出现在一些常用词和习语中,记住其特定含义即可。
It is a long time not to get in touch with Tom.
很长时间没有和汤母取得联系了。
Down with imperialism.
打倒帝国主义。 -
with的复合结构的用法许多大量的用法总结PPT学习教案.pptx
2021-10-07 04:13:38with的复合结构的用法许多大量的用法总结PPT学习教案.pptx -
with的复合结构的用法许多大量的用法总结PPT教案学习.pptx
2021-10-01 09:46:19with的复合结构的用法许多大量的用法总结PPT教案学习.pptx -
Oracle 数据库树形结构用法总结.mht
2015-09-15 07:04:06Oracle 数据库树形结构用法总结,例如SYS_CONNECT_BY_PATH 、START WITH . . . CONNECT BY . . .等具体语法介绍 -
oracle的with as用法
2021-05-08 16:14:24Oracle中group by用法 Oracle中group by用法 在select 语句中可以使用group by 子句将行划分成较小的组,一旦使用分组后select操作的对象变为各个分组后的数据,使用聚组函数返回的是每一个组的汇总 ......转自:https://www.cnblogs.com/linjiqin/archive/2013/06/24/3152667.html
–针对多个别名
with
tmp as (select * from tb_name),
tmp2 as (select * from tb_name2),
tmp3 as (select * from tb_name3),
…
1
2
3
4
5
6
7
8
9
--相当于建了个e临时表
with eas (select *from scott.emp ewhere e.empno=7499)
select *from e;
--相当于建了e、d临时表
with
eas (select *from scott.emp),
das (select *from scott.dept)
select *from e, dwhere e.deptno = d.deptno;
其实就是把一大堆重复用到的sql语句放在with as里面,取一个别名,后面的查询就可以用它,这样对于大批量的sql语句起到一个优化的作用,而且清楚明了。
向一张表插入数据的with as用法
1
2
3
4
5
insert into table2
with
s1as (select rownum c1from dualconnect by rownum <= 10),
s2as (select rownum c2from dualconnect by rownum <= 10)
select a.c1, b.c2from s1 a, s2 bwhere...;
select s1.sid, s2.sid from s1 ,s2需要有关联条件,不然结果会是笛卡尔积。
with as 相当于虚拟视图。
with as短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个sql片断,该sql片断会被整个sql语句所用到。有的时候,是为了让sql语句的可读性更高些,也有可能是在union all的不同部分,作为提供数据的部分。
特别对于union all比较有用。因为union all的每个部分可能相同,但是如果每个部分都去执行一遍的话,则成本太高,所以可以使用with as短语,则只要执行一遍即可。如果with as短语所定义的表名被调用两次以上,则优化器会自动将with as短语所获取的数据放入一个temp表里,如果只是被调用一次,则不会。而提示materialize则是强制将with as短语里的数据放入一个全局临时表里。很多查询通过这种方法都可以提高速度。
1
2
3
4
5
6
7
8
9
10
with
sql1as (select to_char(a) s_namefrom test_tempa),
sql2as (select to_char(b) s_namefrom test_tempbwhere not exists (select s_namefrom sql1where rownum=1))
select *from sql1
union all
select *from sql2
union all
select 'no records' from dual
where not exists (select s_namefrom sql1where rownum=1)
and not exists (select s_namefrom sql2where rownum=1);
with as优点
增加了sql的易读性,如果构造了多个子查询,结构会更清晰;
更重要的是:“一次分析,多次使用”,这也是为什么会提供性能的地方,达到了“少读”的目标
Oracle to_date()函数的用法
Oracle to_date()函数的用法 to_date()是Oracle数据库函数的代表函数之一,下文对Oracle to_date()函数的几种用法作了详细的介绍说明,供您参考学习. 在Orac ...
Oracle 中 decode 函数用法
Oracle 中 decode 函数用法 含义解释:decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值) 该函数的含义如下:IF 条件=值1 THEN RETURN(翻译 ...
Oracle trunc()函数的用法
Oracle trunc()函数的用法 /**************日期********************/1.select trunc(sysdate) from dual --2013-0 ...
Oracle中group by用法
Oracle中group by用法 在select 语句中可以使用group by 子句将行划分成较小的组,一旦使用分组后select操作的对象变为各个分组后的数据,使用聚组函数返回的是每一个组的汇总 ...
oracle之to_char,to_date用法
[转载自]http://www.jb51.net/article/45591.htm 这篇文章主要介绍了oracle中to_date详细用法示例,包括期和字符转换函数用法.字符串和时间互转.求某天是星 ...
oracle获取本月第一天和最后一天及Oracle trunc()函数的用法
select to_char(trunc(add_months(last_day(sysdate), -1) + 1), 'yyyy-mm-dd') "本月第一天", to_cha ...
oracle正则表达式regexp_like的用法详解
oracle正则表达式regexp_like的用法详解 /*ORACLE中的支持正则表达式的函数主要有下面四个:1,REGEXP_LIKE :与LIKE的功能相似2,REGEXP_INSTR :与IN ...
oracle中to_date详细用法示例(oracle日期格式转换)
这篇文章主要介绍了oracle中to_date详细用法示例,包括期和字符转换函数用法.字符串和时间互转.求某天是星期几.两个日期间的天数.月份差等用法 TO_DATE格式(以时间:2007-11-02 ...
Oracle trunc()函数的用法--来着心静禅定ing
1.TRUNC(for dates) TRUNC函数为指定元素而截去的日期值. 其具体的语法格式如下: TRUNC(date[,fmt]) 其中: date 一个日期值 fmt 日期格式,该日期将由指 ...
Oracle trunc()函数的用法及四舍五入 round函数
--Oracle trunc()函数的用法/**************日期********************/1.select trunc(sysdate) from dual --2011 ...
随机推荐
Python’s SQLAlchemy vs Other ORMs[转发 4]peewee
peewee peewee is a small, expressive ORM. Compared to other ORMs, peewee focuses on the principal of ...
IT人员如何保护视力
最近感觉眼比较难受,有点干,估计是因为用上老婆淘汰的iPhone5C后屏幕太小,而我又是一个手机瘾重点患者的原因.为了保持自己5.0+的视力,做了以下工作,分享给各位朋友: Win7电脑将字体放大到1 ...
Java_04循环结构
1.while 循环结构 格式: while(循环条件){ } 关键字 while 后的小括号中的内容是循环条件.循环条件是一个表达式,值为布尔类型. { }大括号中的语句统称为循环操作,又称为循环体 ...
微信小程序设置web-view的业务域名
微信小程序设置web-view的业务域名 域名必备 你的域名必须要备案过 你的域名必须是https,而不能是http web-view 在小程序后台添加业务域名,只解析业务域名中的url网页地址的. ...
iPhoneX快速适配,简单到你想哭。
研究了5个小时的iPhoneX适配. 从catalog,storyboard,safearea等一系列文章中发现.如果我们想完全撑满全屏.那直接建一个storyboard就好了.但撑满全屏后,流海就是 ...
java newInstance() 的参数版本与无参数版本详解
newInstance() 的参数版本与无参数版本详解 博客分类: Core Java 通过反射创建新的类示例,有两种方式: Class.newInstance() Constructor.new ...
odoo打包下载
view 视图中下载按钮的编辑
winform学习目录
Winform混合式开发框架的特点总结 伍华聪 2016-02-26 10:47 阅读:1966 评论:2 代码生成工具Database2Sharp中增加视图的代码生成以及主从表界面生成功能 ...
javascript在IE下不能用 trim函数解决方法
javascript 的trim 函数在firefox 下面使用没有问题
sqlserver事务怎么开启 怎么提交 怎么回滚
1.自动transaction每句statement都是一个transaction.例一个update指令更新多笔纪录, 要就全部成功, 只要失败,全部会回复原值. 2.ExplicitTransac ...
-
Oracle with使用方法以及递归
2022-04-25 01:08:46优质资源分享 ...知识定位 人群定位 ... Python实战微信订餐小程序 ...本课程是python flask+微信小程序的完美结合,从项目搭建到...表结构 -- 部门表 CREATE TABLE DEPT ( dept_no VARCHAR2(5) NOT NULL, dept_name🚀 优质资源分享 🚀
学习路线指引(点击解锁) 知识定位 人群定位 🧡 Python实战微信订餐小程序 🧡 进阶级 本课程是python flask+微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一个全栈订餐系统。 💛Python量化交易实战💛 入门级 手把手带你打造一个易扩展、更安全、效率更高的量化交易系统 数据准备
表结构
-- 部门表 CREATE TABLE DEPT ( dept_no VARCHAR2(5) NOT NULL, dept_name VARCHAR2(255) NOT NULL, PRIMARY KEY(dept_no) ); -- 添加注释 COMMENT ON TABLE DEPT IS '部门表'; COMMENT ON COLUMN DEPT.dept_no IS '部门编码'; COMMENT ON COLUMN DEPT.dept_name IS '部门名称'; -- 员工表 CREATE TABLE EMP ( emp_no VARCHAR2(8) NOT NULL, emp_name VARCHAR2(20) NOT NULL, dept_no VARCHAR2(5) NOT NULL, salary NUMBER(10, 2), PRIMARY KEY(emp_no) ); -- 添加注释 COMMENT ON TABLE EMP IS '员工表'; COMMENT ON COLUMN EMP.emp_no IS '员工编码'; COMMENT ON COLUMN EMP.emp_name IS '员工名称'; COMMENT ON COLUMN EMP.dept_no IS '所属部门编码'; COMMENT ON COLUMN EMP.salary IS '工资';
演示数据
-- 插入部门 insert into DEPT(dept_no, dept_name) values ('D001', '总经理部'); insert into DEPT(dept_no, dept_name) values ('D002', '人力资源部'); insert into DEPT(dept_no, dept_name) values ('D003', '行政后勤部'); insert into DEPT(dept_no, dept_name) values ('D004', '销售一部'); insert into DEPT(dept_no, dept_name) values ('D005', '销售二部'); insert into DEPT(dept_no, dept_name) values ('D006', '研发一部'); insert into DEPT(dept_no, dept_name) values ('D007', '研发二部'); -- 批量插入员工数据 declare type e_name is varray(7) of varchar2(20); e_name_arr e_name :=e_name('陈天龙','李晓红','田萌','张三','李四', '王五', '赵六'); begin for d in 1..7 loop for i in 1..(d*3) Loop insert into EMP(emp_no, emp_name, dept_no, salary) values ( 'E' || d || replace(lpad(i,5),' ','0'), e_name_arr(d) || i || '号', 'D' || replace(lpad(d,3),' ','0'), trunc(dbms_random.value(3,80)) * 1000 ); end loop; end loop; end;
基本语法
简单的with语句:
WITH t AS (SELECT * FROM EMP) SELECT * FROM t;
在视图中使⽤WITH语句进⾏连接:
CREATE OR REPLACE VIEW V_EMP_DETAIL AS WITH W_DEPT AS ( SELECT * FROM DEPT ), W_EMP AS ( SELECT * FROM EMP ) SELECT d.dept_name, e.* FROM W_EMP e LEFT JOIN W_DEPT d ON d.dept_no = e.dept_no;
总结:
- 使⽤WITH AS 语句可以为⼀个⼦查询语句块定义⼀个名称,在查询语句的其他地⽅引⽤这个⼦查询。
- Oracle 数据库像对待内联视图或临时表⼀样对待 被引⽤的⼦查询名称,从⽽起到⼀定的优化作⽤
- 在同级select前有多个查询定义的时候,第1个⽤with,后⾯的不⽤with,并且⽤逗号隔开。
- 最后⼀个with ⼦句与下⾯的查询之间不能有逗号,只通过右括号分割,with ⼦句的查询必须⽤括号括起来
WITH语句的优点:
- SQL可读性增强。⽐如对于特定with⼦查询取个有意义的名字等。
- with⼦查询只执⾏⼀次,将结果存储在⽤户临时表空间中,可以引⽤多次,增强性能。
示例
1、查询出部门的总工资⼤于所有部门平均总工资的部门。
分析:做这个查询,⾸先必须计算出所有部门的总工资,然后计算出所有部门的平均总工资,再筛选出部门的总工资⼤于所有部门总工资平均工资的部门。
- 那么第1步 with 查询查出所有部门的总工资
- 第2步⽤with 从第1 步获得的结果表中查询出平均工资
- 最后利⽤这两次 的with 查询⽐较总工资⼤于平均工资的结果
WITH W_DEPT_TOTAL_SALARY AS -- 查询出部门的总⼯资 ( SELECT d.dept_name, SUM(e.salary) total_salary FROM DEPT d JOIN EMP e ON e.dept_no = d.dept_no GROUP BY d.dept_name ), W_DEPT_AVG_SALARY AS -- 查询出部门的平均⼯资,在后⼀个WITH语句中可以引⽤前⼀个定义的WITH语句 ( SELECT SUM(total_salary) / COUNT(1) avg_salary FROM W_DEPT_TOTAL_SALARY ) SELECT * FROM W_DEPT_TOTAL_SALARY dts WHERE dts.total_salary > ( -- 进⾏⽐较 SELECT das.avg_salary FROM W_DEPT_AVG_SALARY das );
2. 统计数据并关联到每条员工数据
展⽰根据查询结果查询出的数据,并把根据查询出的结果进⾏统计,如最⼤⼯资,最⼩⼯资,平均⼯资,
进⾏级联,由于查询的统计数据的条数为1条,所以不会发⽣笛卡⼉积的错误,WITH W_EMP AS -- 查询基础数据 ( SELECT emp_no, emp_name, dept_no, salary FROM EMP ), W_EMP_DATA AS -- 查询统计数据 ( SELECT MAX(salary) as max_salary, MIN(salary) as min_salary, SUM(salary) as total_salary FROM W_EMP ) SELECT * FROM W_EMP, W_EMP_DATA -- 进⾏级联,由于查询的统计数据的条数为1条,所以不会发⽣笛卡⼉积的错误
3. 后⾯的with定义可以引⽤前⾯的结果集,但是with⼦查询不可嵌套定义。
下⾯的语句错误:因为不允许嵌套定义with语句
WITH W_EMP_2 AS -- with中有嵌套with,不允许 ( WITH W_EMP AS ( SELECT emp_name FROM EMP WHERE emp_no='E100001' ) SELECT emp_name FROM W_EMP ) SELECT * FROM W_EMP_2;
递归案例
- 实现从1到10的输出
with w_num(n) as ( select 1 as n from dual union all select n+1 from w_num where n<10 ) select n from w_num;
- 空瓶换啤酒最多能喝几瓶问题
/** 2元1瓶啤酒 4个瓶盖换1瓶啤酒 2个空瓶换1瓶啤酒 问:10元可以喝几瓶 */ with w_drink_beer(beer, bottle, lid) AS ( select 10/2 as beer, 10/2 as bottle, 10/2 as lid from dual union all select beer + trunc(bottle/2) + trunc(lid/4) as beer, mod(bottle, 2) + trunc(bottle/2) + trunc(lid/4) as bottle, mod(lid, 4) + trunc(bottle/2) + trunc(lid/4) as lid from w_drink_beer where trunc(bottle/2) != 0 or trunc(lid/4) != 0 ) select beer as '喝了几瓶啤酒', bottle as '剩下几个瓶子', lid as '剩下几个瓶盖' from w_drink_beer;
递归-地铁线路换乘问题
示例表和脚本下载:https://github.com/dongxuyang1985/sql_in_action
-- Oracle WITH transfer (start_station, stop_station, stops, path) AS ( SELECT station_name, next_station, 1, line_name||station_name||'->'||line_name||next_station FROM bj_subway WHERE station_name = '王府井' UNION ALL SELECT p.start_station, e.next_station, stops + 1, p.path||'->'||e.line_name||e.next_station FROM transfer p JOIN bj_subway e ON p.stop_station = e.station_name AND (INSTR(p.path, e.next_station) = 0) ) SELECT * FROM transfer WHERE stop_station ='积水潭';
-
python的with用法(参考)
2021-01-30 14:55:29一、With语句是什么?有一些任务,可能事先需要设置,事后做清理工作。对于这种场景,Python的with语句提供了一种非常方便的处理方式。一个很好的例子是文件处理,你需要获取一个文件句柄,从文件中读取数据,然后... -
MySQL with语句小结
2020-06-02 16:22:06备注:测试数据库版本为MySQL 8.0 这个blog我们来聊聊MySQL的with语句 对于逻辑复杂的sql,with可以大大减少临时表的数量,提升代码...语句结构: with subquery_name1 as (subquery_body1), subquery_name2 as (subque -
sql 中的with 语句使用
2021-01-18 18:34:30一直以来都很少使用sql中的with语句,但是看到了一篇文章中关于with的使用,它的确蛮好用,希望以后记得使用这个语句。一、with 的用法With alias_name as (select1)[,alias_namen as (select n) ]--中括号可以省略... -
ORACLE常用结构和函数使用方法总结
2021-05-04 06:27:38Normal0falsefalsefalseEN-USZH-CNX-NONE【IT168技术】在学习oracle的过程中,遇到一些常用的函数或结构,下面做一个简单的总结。With用法:The WITH query_name clause lets youassign a name to a subquery block.... -
Python中with用法详解
2019-07-19 09:32:00一 、with语句的原理 上下文管理协议(Context Management Protocol):包含方法__enter__()和__exit__(),支持该协议的对象要实现这两个方法。 上下文管理器(Context Manager):支持上下文管理协议的对象,... -
with的用法小结
2016-05-27 15:31:252. 如果定义了with子句,而在查询中不使用,那么会报ora-32035 错误:未引用在with子 句中定义的查询名。 3. 前面的with子句定义的查询在后面的with子句中可以使用。但是一个with子句内部不能 嵌套with子句。 4. ... -
Oracel中With...as..的用法,总结
2019-07-13 15:44:12的用法,总结: 首先要先了解with...as...的语法: withtempNameas(select....) select... 接下来一1-19中得到11-14为例进行模拟......... 一般的sql如下: select*from ( --模拟一个20行的数据 SELECTL... -
Python 中 with 用法详解
2020-11-11 13:19:55Python中with用法详解:https://www.cnblogs.com/pythonbao/p/11211347.html 1.with 语句的原理 上下文管理协议(Context Management Protocol):包含方法 __enter__() 和 __exit__(),支持该协议的对象要... -
总结——STL 常用数据结构及用法
2017-07-26 08:57:27STL中常用数据结构及用法 C++中的STL(Standard Template Library),即标准模板库,中包含了很多编程时常用的数据结构,省去了自己临时写的麻烦,这里就来总结一下。如果有错误或写的不好的地方还请多指正。 首先... -
hive 语句中with子查询的用法
2020-08-26 18:38:20with...as...也叫做子查询部分,语句允许hive定义一个...必须和其他sql一起使用(可以定义一个with但在后续语句中不使用他) with...as...是一次性的 with...as...的完整格式是这样的 -- with table_name as(子查询.. -
Oracle start with connect by prior 使用总结
2020-05-30 21:46:51Oracle树形数据结构查询数据 -
Python 中 with用法及原理
2018-07-09 19:23:52前言with 语句适用于对资源进行访问的场合,确保不管使用过程中是否发生异常都会执行必要的“清理”操作,释放资源,比如文件使用后自动关闭/线程中锁的自动获取和释放等。问题引出如下代码:file = open("1.... -
Python语法学习记录(1):关于WITH用法总结
2019-03-22 10:46:03PYTHON中关于WITH用法总结 --ZZQ 解... -
laravel 使用with预加载(渴求加载)的使用方法示例及嵌套查询示例
2020-10-28 14:54:29laravel 使用with预加载(渴求加载)的使用方法示例with()方法能做什么?在什么场景使用?表结构代码实现(根据当前登录用户,获取用户下的所有相关文章) with()方法能做什么?在什么场景使用? 1.情景如下。2张... -
python with as用法
2020-12-05 11:54:35with EXPRESSION [ as VARIABLE] WITH-BLOCK基本要求:with所求值的对象必须有一个__enter__()方法,一个__exit__()方法。紧跟with后面的语句被求值后,返回对象的__enter__()方法被调用,这个方法的返回值将被赋值... -
Hive中with cube、with rollup、grouping sets用法
2019-11-04 18:22:58表结构 CREATE TABLE test (f1 string, f2 string, f3 string, cnt int) ROW FORMAT delimited FIELDS TERMINATED BY '\t' stored AS textfile; L... -
start with connect by prior 递归查询用法
2021-02-07 06:42:52这个子句主要是用于B树结构类型的数据递归查询,给出B树结构类型中的任意一个结点,遍历其最终父结点或者子结点。先看原始数据:create table a_test( parentid varchar2(10),subid varchar2(10));insert into a_... -
with复合结构小结
2009-07-02 11:25:00不少学生对句中with结构的用法不甚清楚,现总结如下。 with结构也称为with复合结构,是由with+复合宾语组成,常在句中做状语,表示谓语动作发生的伴随情况、时间、原因、方式等。其构成有下列几种情形: 1、... -
软件体系结构期末复习总结
2020-08-18 21:14:41什么是软件体系结构? 软件体系结构是具有一定形式的结构化元素,抽象的讲,软件体系结构包括构成系统的设计元素的描述,设计元素的交互,设计元素组合的模式,以及在这些模式中的约束。具体的讲,体系结构 = 组件+... -
oracle 树结构的查询总结
2021-05-02 07:50:50select t.*,t.rowid from SYS_DEPT_V t--lpad函数和伪列level模拟树形结构select LPAD(' ',5 * (LEVEL - 1)) || s.DEPT_CODEfrom SYS_DEPT_V sstart with s.parent_dept_id = '-1'connect by prior s.id = s....