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

Oracle SQL में केस स्टेटमेंट के भाग में उपनाम का उपयोग करना

नहीं, आप select . के समान स्तर पर अन्यत्र उपनाम का उल्लेख नहीं कर सकते , order by . के अलावा अन्य क्लॉज, क्योंकि जब Oracle इसे आंतरिक रूप से असाइन करता है।

दस्तावेज़ीकरण से (जोर जोड़ा गया):

<ब्लॉककोट>

आप चयन सूची में तत्काल पूर्ववर्ती अभिव्यक्ति को लेबल करने के लिए कॉलम उपनाम, c_alias का उपयोग कर सकते हैं ताकि कॉलम एक नए शीर्षक के साथ प्रदर्शित हो। उपनाम प्रभावी रूप से क्वेरी की अवधि के लिए चयन सूची आइटम का नाम बदल देता है। उपनाम का उपयोगORDER BY . में किया जा सकता है खंड, लेकिन क्वेरी में अन्य खंड नहीं

आपको एक आंतरिक क्वेरी का उपयोग करने की आवश्यकता होगी, कुछ इस तरह:

select "Id",
    case "Id"
        when 3
        then 'foo'
        else 'bar'
    end AS "Results"
from (
    select TABLEA.SomeIDNumber AS "Id",
    from TABLEA
);



  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. Oracle फ़ंक्शन से RefCursor कैसे वापस करें?

  3. एक कथन में अनुक्रम से कई NEXTVAL क्वेरी करें

  4. SQL डेवलपर 4.0 का विमोचन

  5. क्या Oracle प्रबंधित ड्राइवर async/प्रतीक्षा ठीक से उपयोग कर सकता है?