मेरे पास इस तरह एक टेबल है:
Field1 Field2 Field3 Field4 फ्रैड टॉम फ्रेड हैरी टॉम टॉम डिक हैरी हैरी
और मैं यह निर्धारित करना चाहता हूं कि प्रत्येक फ़ील्ड के लिए इसका क्या पूरा किया गया है।
मैं निष्पादित कर सकता हूं:
फ़ील्ड 1 का चयन करें COUNT (फ़ील्ड 2) WHERE (फ़ील्ड 2 & lt; & gt; '') AS Field2Count SELECT COUNT (फ़ील्ड 3) WHERE (फ़ील्ड 3 & lt; & gt; SELECT COUNT (फ़ील्ड 1) WHERE (फ़ील्ड 1 & lt; & gt; '') ') के रूप में फ़ील्ड 3 संख्या का चयन करें COUNT (फ़ील्ड 4) WHERE (फ़ील्ड 4 & lt; & gt;' ') एएस फ़ील्ड 4 क़तार
क्या इन अलग एसक्यूएल स्टेटमेंट को एक में रोल करना संभव है जो 4 परिणाम वापस करेगा एक हिट में? क्या ऐसा करने के लिए कोई प्रदर्शन लाभ है (यह देखते हुए कि कॉलम और पंक्तियों की संख्या अभ्यास में काफी बड़ी हो सकती है)?
आप ऐसा कर सकते हैं:
sum चुनें (केस है जब फ़ील्ड 1 & lt; & gt; फ़ील्ड 1 के रूप में 1 और 0 अंत) फ़ील्ड 1 गणना, योग (फ़ील्ड 2 & lt; & gt; '' तब 1 और 0 अंत) फ़ील्डकुंड के रूप में, राशि (मामले जब फ़ील्ड 3 & lt; & gt; '' फिर 1 और 0 एफ़) फ़ील्ड 3 के रूप में, राशि (जब फ़ील्ड 4 & lt; & gt; '' तब 1 और 0 अंत) फ़ील्ड 4 केउंटैब से TheTable
Comments
Post a Comment