sqlServer/mysql高级语法教程一

发布时间:2026/5/23 16:54:23

sqlServer/mysql高级语法教程一 sqlserver语法一、CTE 递归(WITH 递归)1.1. 功能专门处理层级树形结构:产品分类、物料分类部门组织架构菜单上下级物料 BOM 层级、父子单据一句话:有 父 ID (parentid) 关联的树形数据,都用它1.2、递归 CTE 标准固定语法结构模板格式WITH 自定义递归名 AS ( -- 成员1:锚点成员(起始数据、根节点/当前节点) SELECT 字段1,字段2,... FROM 表 WHERE 起始条件 UNION ALL -- 成员2:递归成员(循环关联自己,找下级/找上级) SELECT 字段1,字段2,... FROM 表 别名 INNER JOIN 自定义递归名 递归别名 ON 关联条件 ) -- 最后查询递归结果 SELECT * FROM 自定义递归名;关键规则(必记,避免报错)锚点成员 和 递归成员列数必须一样、数据类型要对应只能用UNION ALL,不能用UNION递归不能写死循环(比如关联条件写反)递归成员:和自己结果关联,循环找父子级SQL Server 不用写RECURSIVE,MySQL8.0 必须写WITH RECURSIVECTE 递归只在当前这条 SQL 有效,执行完就销毁最后必须SELEC

相关新闻