sql - how to get Related Records using LINQ -


हैलो मेरे पास यह टेबल संरचना है:

  ** उत्पादटेबल ** उत्पादक उत्पादनाम ** श्रेणियाँटेबल ** श्रेणी आईडी श्रेणी नाम ** उत्पादकैग्ज ** उत्पादक श्रेणीआईडी ​​ 

प्रत्येक उत्पाद कई श्रेणियों से संबंधित हो सकता है। अब मुझे संबंधित उत्पाद खोजने का एक तरीका चाहिए। लेकिन मैं इसे इस तरह चाहता हूं:

मान लें कि उत्पाद 1 लैपटॉप, सहायक उपकरण के हैं। इसलिए केवल उन उत्पादों जो दोनों श्रेणियों से संबंधित हैं (न सिर्फ एक) को पुनः प्राप्त किया जा सकता है।

एसक्यूएल क्वेरी काम करेगा, यद्यपि यदि आप LINQ को सर्वोत्तम दे सकते हैं।

अग्रिम धन्यवाद

मार्क वी।

अद्यतन

यह सेटअप के साथ मेरा एसक्यूएल समाधान है:

< Pre> declare @p table (id int, name varchar (10)) @c table (id int, name varchar (10)) घोषित करें @pc table (pid int, cid int) @p (id) में डालें , नाम) मूल्य (1, 'लैपटॉप') @ प (आईडी, नाम) मानों (2, 'डेस्कटॉप') में डालें @ प (आईडी, नाम) मूल्यों में डालें (3, 'दूध') @ सी में डालें आईडी, नाम) मूल्य (1, 'कंप्यूटर') @ सी (आईडी, नाम) मान (2, 'डिवाइस') में डालें @ सी (आईडी, नाम) मान (3, 'भोजन') में डालें @ पीसी में डालें @ (पीसीआईडी, सीआईडी) मूल्यों (1, 1) मूल्यों (1, 1) में डालें @ पीसी (पीआईडी, सीआईडी) मान (1, 2) - @ पीसी (पीड, सीआईडी) मानों में प्रविष्ट करें (1, 3) @ पीसी (पीआईडी, सीआईडी) मूल्य (2, 1) @ पीसी (पीड, सीआईडी) मानों में डालें (2, 2) @ पीसी (पीड, सीआईडी) मूल्यों में डालें (3, 3) @ उत्पादक इंट घोषित करें; निर्धारित @productId = 1; * @ पी से * चुनें जहां - स्रोत उत्पाद के साथ वर्तमान उत्पाद शेयर - - उन श्रेणियों की संख्या के बराबर होगा जो सोर्स उत्पाद के अंतर्गत आता है (@ पीसी पीसी से गिन (*) का चयन करें जहां pc.pid = p .id और pc.cid में (पीसी पीसी से pidify cid चुनें pc.pid = @productId)) = (@ पीसी पीसी से गिनती (*) का चयन करें जहां pc.pid = @productId) और p.id & lt; & gt; @ उत्पादक

Comments