Re: [SQL ] 请教语法

楼主: ken218 (ken218)   2019-04-01 20:50:22
大概这样
With cte as (
Select a.*, a.原料品号 as X From table_a a where a.成品号 is null
Union all
Select a.*, cte.x From table_a a
Join cte on a.成品号 = cte.原料品号

Select * from cte where X ='a'
※ 引述《oherman (qq)》之铭言:
: 数据库名称:MS-SQL
: 数据库版本:2016
: 内容/问题描述:
: Table A长这样
: ================
: 原料品号   成品号 =
: ================
: a
: b
:  a1  a
: a2   a
: b1 b
: b2 b
: 原料品号组合成品号,也就是
: a b
: / \ / \
: a1 a2 b1 b2
: 会有可能多阶层,不止两层串连
: 我要如何下SQL语法将所有有关联的品号抓出来呢?
: 例如:
: WHERE 原料品号=a1或 WHERE 原料品号=a2 或 WHERE 原料品号=a
: 也就是不管以其中一个品号查询,都会抓到所有的品号,包含成品号
: 产生的结果都是:
: ================
: 原料品号   成品号 =
: ================
: a
:  a1  a
: a2   a
作者: oherman (qq)   2019-05-28 17:11:00
谢谢!

Links booklink

Contact Us: admin [ a t ] ucptt.com