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

एकाधिक केस स्टेटमेंट में उपनाम कॉलम नाम

आप एक ही SELECT . में कॉलम एलियासेस का इस्तेमाल नहीं कर सकते हैं खंड। आपके पास दो विकल्प हैं:

एक सबक्वेरी का प्रयोग करें:

SELECT Alias1,
       CASE
            WHEN Alias1 = FieldA1 THEN FieldA0
            WHEN Alias1 = FieldB1 THEN FieldA1
            ELSE NULL
       END AS Alias2 
FROM (
    SELECT CASE 
                WHEN FieldA = 'TestA' THEN FieldA1
                WHEN FieldB = 'TestB' THEN FieldB1
                ELSE NULL
           END AS Alias1,
           FieldA1
           FieldB1
    ...)

या आप उस तर्क को दोहरा सकते हैं जिसका आपने पहले CASE . में उपयोग किया था :

SELECT CASE 
            WHEN FieldA = 'TestA' THEN FieldA1
            WHEN FieldB = 'TestB' THEN FieldB1
            ELSE NULL
       END AS Alias1,
       CASE 
            WHEN FieldA = 'TestA' THEN FieldA0
            WHEN FieldB = 'TestB' THEN FieldB0
            ELSE NULL
       END AS Alias2



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ऑरैकल से ब्लॉब डेटा प्राप्त करते समय सीमा

  2. SQL का उपयोग करके उत्क्रमण जोड़े निकालें

  3. सी ## उपसर्ग के बिना ओरेकल मल्टीटेनेंट 12 सी में उपयोगकर्ता कैसे बनाएं?

  4. मैं अपने Oracle DB में सभी अनुक्रमों को 0 मान पर कैसे रीसेट कर सकता हूं?

  5. ओरेकल ट्रिगर डालने या हटाने के बाद