以类似树格式的父子格式编写查询
Write Query in Parent Child like tree format
我正在处理一个 MVC C# 项目,我的 SQL 查询有些复杂。我有三张桌子
- 客户
- 等级
- 关卡详情
两个表都有关系
级别映射到级别详细信息,级别详细信息映射到客户和级别
我想以树格式显示该数据,例如:
父级:客户名称 CustomerId 客户类型
Test T1 TestCustomer
Child Levelid Leveldesc 城邦
L1 L1desc C1 S1
L2 L2desc C2 S2
逻辑是,当我单击父项时,它会显示子级别。
我试过这个查询
select LD.Level_Rid, LD.Customer_Rid, LD.Level_Detail_Rid, L.Level_Id, L.Level_Description, L.Country, L.State, L.City, L.Area, CU.Customer_Name, CU.Customer_Type
FROM [dbo].[Level] L
INNER JOIN [dbo].[Level_Detail] LD ON R.Level_Rid = RD.Level_Rid
INNER JOIN [dbo].[Customer] CU ON LD.Customer_Rid = CU.Customer_Rid
是否可以SQL查询?
我用 cte 写了这个查询:
WITH cte_cu as
( select Customer_Rid from [dbo].[Customer] as cU )
--select * from cte_cu where CustomerRid = CustomerRid
select Customer_Rid, 1 orderKeeper,Customer_Name as CustomerName ,[State] as [State],City,Customer_id from [dbo].[Customer] where Customer_Rid = Customer_Rid
union
select Customer_Rid,2,'LevelId' as Customer_Name ,'LevelDescription' ,'','' from [dbo].[Customer]
union
select Customer_Rid,3,Level_Id as Customer_Name ,Level_Description,'',''
FROM [dbo].[Level_Detail] LD
inner join dbo.[Level] as L on LD.Level_Rid = L.Level_Rid
where LD.Customer_Rid = Customer_Rid
结果:
我在 git 中心上传了创建 Table 和插入模拟数据:
我正在处理一个 MVC C# 项目,我的 SQL 查询有些复杂。我有三张桌子
- 客户
- 等级
- 关卡详情
两个表都有关系
级别映射到级别详细信息,级别详细信息映射到客户和级别
我想以树格式显示该数据,例如:
父级:客户名称 CustomerId 客户类型
Test T1 TestCustomer
Child Levelid Leveldesc 城邦
L1 L1desc C1 S1
L2 L2desc C2 S2
逻辑是,当我单击父项时,它会显示子级别。
我试过这个查询
select LD.Level_Rid, LD.Customer_Rid, LD.Level_Detail_Rid, L.Level_Id, L.Level_Description, L.Country, L.State, L.City, L.Area, CU.Customer_Name, CU.Customer_Type
FROM [dbo].[Level] L
INNER JOIN [dbo].[Level_Detail] LD ON R.Level_Rid = RD.Level_Rid
INNER JOIN [dbo].[Customer] CU ON LD.Customer_Rid = CU.Customer_Rid
是否可以SQL查询?
我用 cte 写了这个查询:
WITH cte_cu as
( select Customer_Rid from [dbo].[Customer] as cU )
--select * from cte_cu where CustomerRid = CustomerRid
select Customer_Rid, 1 orderKeeper,Customer_Name as CustomerName ,[State] as [State],City,Customer_id from [dbo].[Customer] where Customer_Rid = Customer_Rid
union
select Customer_Rid,2,'LevelId' as Customer_Name ,'LevelDescription' ,'','' from [dbo].[Customer]
union
select Customer_Rid,3,Level_Id as Customer_Name ,Level_Description,'',''
FROM [dbo].[Level_Detail] LD
inner join dbo.[Level] as L on LD.Level_Rid = L.Level_Rid
where LD.Customer_Rid = Customer_Rid
结果:
我在 git 中心上传了创建 Table 和插入模拟数据: