ऐसा लगता है कि आप कुछ ऐसा चाहते हैं
SELECT least( (case when col1 is null or col1 = 0 then 999999999 else col1 end),
(case when col2 is null or col2 = 0 then 999999999 else col2 end),
(case when col3 is null or col3 = 0 then 999999999 else col3 end) )
FROM <<table name>>
जहां 999999999 कुछ संख्यात्मक मान है जो इतना बड़ा है कि यह हमेशा किसी अन्य मान्य मान से बड़ा होगा। यदि यह संभव है कि तीनों स्तंभों में NULL
होगा या 0 मान, तो आप शायद एक अतिरिक्त जांच जोड़ना चाहेंगे कि यदि उस least
का परिणाम है फ़ंक्शन 999999999 है जिसे आप 0 या NULL
return लौटाते हैं या जो कुछ भी समझ में आता है।
@X-Zero एक काम कर रहे SQL Fiddle उदाहरण
को एक साथ रखने के लिए काफी दयालु था। इस निर्माण की। ध्यान दें कि उसका उदाहरण उन पंक्तियों को फ़िल्टर कर रहा है जहां सभी तीन स्तंभों में NULL
. है या 0 मान।