通用表表达式查询

1.方法:

1.1普通变量创建

with 表名(列名) as(select 内容)

语义:创建一张表 列名和内容11对应

和临时表的区别,这个类似变量,变量和常量的区别

后面可以影响前面:

1.2循环变量创建

员工分管层级:

sql 复制代码
with recursive emp_path(emp_id,emp_name,path) as (
	select employee_id,first_name||last_name,first_name||','||last_name
	from employees
	where manager_id is NULL
	
	UNION ALL
	SELECT employee_id, first_name||','||last_name, path||'->'||first_name||','||last_name
	FROM employees e
	JOIN emp_path p 
	ON (e.manager_id = p.emp_id)
)

select * 
from emp_path 

2.替代传统join写法

3.好处

使用CTE的主要好处包括:提高复杂查询的可读性。CTE可以将复杂查询模块化,组织成容易理解的结构。支持递归查询。CTE通过引用自身实现递归,可以方便地处理层次结构数据和图数据。sm

相关推荐
deepdata_cn12 分钟前
向量数据库是非结构化数据的AI检索底座
数据库·人工智能
梁辰兴14 分钟前
软件工程:数据库设计
数据库·软件工程·数据库设计·逻辑设计·概念设计·梁辰兴·物理设计
10mAh24 分钟前
【Git】误删分支、reset --hard 后提交丢了怎么办?——reflog、fsck 与安全恢复实战
数据库·git·安全·回归
J_bean25 分钟前
剖析 MySQL InnoDB 共享行锁 (S) & 排他行锁 (X)
数据库·mysql·共享行锁·s lock·排他行锁·x lock
Lumistory30 分钟前
城市景观亮化设施维护管养的核心痛点与标准化解决方案
数据库·光照贴图
倒流时光三十年1 小时前
第六阶段 57 · ES|QL 与 SQL API(用 SQL 查 ES)
数据库·sql·elasticsearch
努力进修2 小时前
“数据心脏” 驱动能源自主:国产数据库支撑 Cemsol 实现固井全流程数字化闭环
数据库·人工智能·能源
vHelios2 小时前
SQL不会写?不会找关联表?复杂SQL语句编写逻辑实现思路请查收✉
数据库·sql
DB哥讲数据库2 小时前
【ClickHouse安装教程】从零开始部署高性能列式数据库(附ClickHouse安装包)
数据库·clickhouse
xiancai_xianyu2 小时前
企业智能问数怎么落地,从自然语言到SQL那道坎有多难
数据库·人工智能·sql·text2sql·企业智能问数·agentrag·ai推理可视化