Sunday 15 June 2014

group by - Add two columns in query using SQL -


हैलो मेरे पास 2 टेबल हैं और उनके पास 2 कॉलम हैं।

  DocumentNumber Price < / कोड>  

और मैंने अपने दस्तावेज़ों में उसी दस्तावेज को दर्शाया, प्रत्येक दस्तावेज़ संख्या की गणना और मूल्य में अंतर यहाँ मेरी क्वेरी है

  DocumentNumber, अधिकतम (cnt_s) दस्तावेज़नंबर, अधिकतम (cnt_s2) के रूप में documentNumber1, max (price_s) - max (price_s2) से PriceDifference के रूप में चुनें ((DocumentNumber, count (count *) के रूप में cnt_s, 0 cnt_s2 के रूप में, price_s के रूप में राशि (मूल्य), DocumentNumber द्वारा शीट के समूह से price_s2 के रूप में) संघ सभी (DocumentNumber, 0, गणना (*) cnt_s2, 0, sum (price) के रूप में price_s2 के रूप में DocumentNumber द्वारा शीट 2 एस 2 समूह)) DocumentNumber द्वारा टी ग्रुप;   

मैं सिर्फ कीमत 1 की कीमत और कीमत के अंतर से पहले शीट 2 की कीमत जोड़ना चाहता हूं। मुझे कुछ प्रश्नों का सुझाव दें।

कोशिश करें

  चुनें DocumentNumber, MAX ( (दस्तावेजों की संख्या, COUNT (*) cnt_s, 0 cnt_s2, SUM (मूल्य) से, मूल्य (मूल्य_एस 2) मूल्य_स 2, अधिकतम (मूल्य_एस) - अधिकतम (मूल्य_एस 2) मूल्यनिर्धारण से (cnt_s) cnt_s, MAX (cnt_s2) cnt_s2, Price_s, 0 मूल्य_एस 2 शीट ग्रुप द्वारा DocumentNumber यूनियन सभी का चयन दस्तावेज़ संख्या, 0 cnt_s, COUNT (*) cnt_s2, 0 मूल्य_एस, SUM (मूल्य) price_s2 से पत्रक 2 ग्रुप द्वारा DocumentNumber) q ग्रुप द्वारा DocumentNumber   < P> यहाँ   डेमो है।  

ध्यान दें कि आपकी मूल क्वेरी में आप अधिकतम (cnt_s) और अधिकतम (cnt_s2) लौटाते हैं कोड> जॉइन

  SELECT s.DocumentNumber, s.cnt_s, s2.cnt_s2, s.price_s, s2.price_s2, s.price_s - s2.price_s2 मूल्यनिर्धारित से (चयन करें DocumentNumbe आर, COUNT (*) सीएनटी_एस, एसएम (मूल्य) मूल्य पत्र, पत्र संख्या द्वारा दस्तावेज़ संख्या) एस (दस्तावेज़ का संख्या चुनें, COUNT (*) सीएनटी 2 एस, एसयूएम (मूल्य) मूल्य_एस 2 से पत्रक 2 ग्रुप द्वारा डॉक्यूमेंट नंबर) एस 2 ऑन एस.डेडॉन्यूएनएन = एस 2 DocumentNumber   

यहां डेमो है (दोनों प्रश्नों के साथ)।

ध्यान दें कि यह क्वेरी मानती है कि आपके पास हमेशा DocumentNumber दोनों में शीट और शीट 2 । मिसमेच को JOIN द्वारा फ़िल्टर किया जाएगा इसलिए आपको बाहरी सहभागी का उपयोग करना पड़ सकता है।

No comments:

Post a Comment