मैं तीन टेबल में शामिल होना चाहता हूं और तालिका ए के योग (मात्रा) की गणना करने के लिए चाहता हूं मैंने कुछ कोशिश की और मुझे वांछित आउटपुट प्राप्त हुआ। लेकिन फिर भी मुझे कुल कार्य और समूह द्वारा खंड पर आधारित भ्रम है।जब हम जॉइन में कुल फ़ंक्शन का उपयोग करते हैं तो समूह द्वारा समूह का उपयोग कैसे करें?
दो या दो से अधिक तालिकाओं में शामिल होने से योग मूल्य की गणना करते समय, समूह द्वारा खंड में हमें उल्लेख करने के लिए कॉलम क्या हैं और हमें उन कॉलम देने की आवश्यकता क्यों है?
उदाहरण के लिए: यहां मेरी तालिका और वांछित क्वेरी है।
TableA: ItemID, JobOrderID, CustomerID, DivisionID, Quantity
TableB: ItemID, ItemName, SpecificationID
TableC: SpecificationID, SpecificationName
TableD: DivisionID, DivisionName
TableE: JobOrderID, JobOrderNo.
TableF: CustomerID, CustomerName
मैं ItemID
, CustomerID
, JobOrderID
और DivisionID
के आधार पर बीमा राशि (मात्रा) प्राप्त करना चाहते हैं।
मैंने निम्नलिखित प्रश्न लिखा और यह ठीक काम कर रहा है। लेकिन अगर मैं समूह द्वारा खंड में किसी भी कॉलम को हटा देता हूं, तो यह वांछित परिणाम नहीं देता है। क्यूं कर? समूह द्वारा खंड क्या करता है? कुल फ़ंक्शन का उपयोग करते समय समूह द्वारा क्लॉज को निर्दिष्ट कैसे करें? मेरी क्वेरी यहाँ है।
SELECT
B.ItemName + ' - ' + C.SpecificationName AS 'ItemName',
SUM(A.Quantity) AS 'Quantity',
A.ItemID,
D.DivisionName,
F.CustomerName,
E.JobOrderNo,
A.DivisionID,
A.JobOrderID,
A.CustomerID
FROM
TableA A
INNER JOIN TableB B ON B.ItemID = A.ItemID
INNER JOIN TableC C ON C.SpecificationID = B.SpecificationID
INNER JOIN TableD D ON D.DivisionID = A.DivisionID
LEFT JOIN TableE E ON E.JobOrderID = A.JobOrderID
LEFT JOIN TableF F ON F.CustomerID = A.CustomerID
WHERE
A.ItemID = @ItemID
GROUP BY
A.ItemID,
A.JobOrderID,
A.DivisionID,
A.CustomerID,
D.DivisionName,
F.CustomerName,
E.JobOrderNo,
B.ItemName,
C.SpecificationName
कोई भी उदाहरण के रूप में इस पर विचार करके समूह द्वारा क्लॉज के बारे में सुझाव दें।
इसलिए यदि हम कुछ कॉलम का चयन करते हैं, तो हमें समूह में उन स्तंभों को समूह में भी देना होगा। ऐसा है क्या? – thevan
हां, चयनित कॉलम 'समूह द्वारा' या agreagtion में होना चाहिए जैसे: 'अधिकतम (कॉलम_नाम) चुनें' –