मैं एक एमवीसी सी # प्रोजेक्ट पर काम कर रहा हूं और मुझे मेरी एसक्यूएल क्वेरी के लिए कुछ जटिलता है। मेरे पास तीन टेबल हैं

  1. ग्राहक
  2. स्तर
  3. स्तर विवरण

दोनों तालिकाओं का संबंध है

स्तर विवरण और स्तर विवरण के लिए मैप किया गया स्तर ग्राहक और स्तर दोनों के लिए मैप किया गया

मैं उस डेटा को ट्री प्रारूप में दिखाना चाहता हूं जैसे:

अभिभावक: ग्राहक का नाम CustomerId ग्राहक प्रकार

     Test          T1          TestCustomer

चाइल्ड लेवलिड लेवलडेस्क सिटी स्टेट

      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 क्वेरी के लिए यह संभव है?

enter image description here

0
Dotnet 24 सितंबर 2020, 08:01

1 उत्तर

सबसे बढ़िया उत्तर

मैंने यह प्रश्न एक सीटीई के साथ लिखा है:

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

नतीजा:

enter image description here

मैंने गिट हब पर तालिका बनाएं और नकली डेटा डालें अपलोड करें:

https://github.com/mghanatabady/SQL-Samples/blob/master/Write%20Query%20in%20Parent%20Child%20like%20tree%20format.SQL

1
Ghanat 29 सितंबर 2020, 09:48