Sql 使用循环插入 table
Sql insert into table using Loop
我有这个数据集:
我在 运行 这个查询之后得到的:
SELECT
MachineEquioement.NumMachine
,Equipements.Nom as 'Equipement'
,MachineEquioement.QTE
FROM MachineEquioement
inner join Equipements on Equipements.NumEquipement = MachineEquioement.NumEquipement
order by NumMachine
我想要的结果如下:
NumMachine || Equipement
1 || Moteur N° 1
1 || Accouplement avec caoutchouc N° 1
1 || Accouplement avec caoutchouc N° 2
1 || Palier P216 N° 1
1 || Palier P216 N° 2
有人对此有好主意吗?可能吗?
这是您要实现的目标吗?
;WITH cte
as ( select MachineEquioement.NumMachine,Equipements.Nom ,QTE
FROM MachineEquioement
INNER join Equipements on Equipements.NumEquipement = MachineEquioement.NumEquipement
WHERE QTE >0
union all
select MachineEquioement.NumMachine,Equipements.Nom ,QTE -1
from cte
WHERE QTE >1
)
SELECT
NumMachine
,Nom as 'Equipement'
,QTE
FROM cte
order by NumMachine option (maxrecursion 0)
我有这个数据集:
我在 运行 这个查询之后得到的:
SELECT
MachineEquioement.NumMachine
,Equipements.Nom as 'Equipement'
,MachineEquioement.QTE
FROM MachineEquioement
inner join Equipements on Equipements.NumEquipement = MachineEquioement.NumEquipement
order by NumMachine
我想要的结果如下:
NumMachine || Equipement
1 || Moteur N° 1
1 || Accouplement avec caoutchouc N° 1
1 || Accouplement avec caoutchouc N° 2
1 || Palier P216 N° 1
1 || Palier P216 N° 2
有人对此有好主意吗?可能吗?
这是您要实现的目标吗?
;WITH cte
as ( select MachineEquioement.NumMachine,Equipements.Nom ,QTE
FROM MachineEquioement
INNER join Equipements on Equipements.NumEquipement = MachineEquioement.NumEquipement
WHERE QTE >0
union all
select MachineEquioement.NumMachine,Equipements.Nom ,QTE -1
from cte
WHERE QTE >1
)
SELECT
NumMachine
,Nom as 'Equipement'
,QTE
FROM cte
order by NumMachine option (maxrecursion 0)