Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

WHERE क्लॉज में COALESCE का सही उपयोग करना

हम ROW_NUMBER . का उपयोग कर सकते हैं प्राथमिकताओं के साथ आप जो चाहते हैं उसे चुनने के लिए यहां:

WITH cte AS (
    SELECT f.*, ROW_NUMBER() OVER (ORDER BY DECODE(ITEM_NO, 'A15354', 1,
                                                            'CURR_NOT_IN_TABLE', 2,
                                                            'GR0013', 3,
                                                            'GUOIUW', 4, 5)) rn
    FROM fruit f
    WHERE spoiled = 'Y'
)

SELECT ITEM_NAME
FROM cte
WHERE rn = 1;

यहां विचार यह है कि खराब होने वाली प्रत्येक वस्तु के लिए 1 से 5 तक प्राथमिकता दी जाए। हम ROW_NUMBER . का उपयोग करते हैं एक अनुक्रम उत्पन्न करने के लिए जो हमेशा 1 से शुरू होता है जो सर्वोच्च उपलब्ध प्राथमिकता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. public_dependency में ऑब्जेक्ट्स के संदर्भ कैसे हो सकते हैं जो all_objects में नहीं हैं?

  2. विंडोज़ पर Oracle डाटाबेस कैसे स्थापित करें

  3. कनेक्शन त्रुटियों पर ODP.NET कनेक्शन पूल को कैसे साफ़ करें?

  4. SQL सर्वर:कैसे oracle की नकल करने के लिए घने_रैंक क्वेरी रखें?

  5. तालिका में समूहीकृत रिकॉर्ड द्वारा कुल चल रहा है