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

Oracle :एक ही पंक्ति के विभिन्न स्तंभों से अधिकतम मान का चयन करें

इस परीक्षण डेटा को देखते हुए ...

SQL> select *
  2  from your_table
  3  /

NAME         M1         M2         M3         M4
---- ---------- ---------- ---------- ----------
A             1          2          3          4
B             6          3          4          5
C             1          5          2          1

SQL>

... एक सीधा GREATEST() कॉल वांछित परिणाम देगा:

SQL> select name
  2          , greatest(m1, m2, m3, m4) as the greatest_m
  3  from your_table
  4  /

NAME THE_GREATEST_M
---- --------------
A                 4
B                 6
C                 5

SQL>

ध्यान दें कि greatest() यदि कोई तर्क शून्य है तो NULL वापस आ जाएगा। अगर यह एक समस्या है तो nvl() . का उपयोग करें एक डिफ़ॉल्ट मान प्रदान करने के लिए जो परिणाम को विकृत नहीं करेगा। उदाहरण के लिए, यदि कोई मान ऋणात्मक नहीं हो सकता....

SQL> select name
  2          , greatest(nvl(m1,0), nvl(m2,0), nvl(m3,0), nvl(m4,0)) as the greatest_m
  3  from your_table
  4  /

NAME THE_GREATEST_M
---- --------------
A                 4
B                 6
C                 5

SQL>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एक संग्रहित खरीद चलाने के लिए हाइबरनेट 4 में देशी ओरेकल कनेक्शन के लिए एक हैंडल प्राप्त करना

  2. ऑन क्लॉज और एसक्यूएल में क्लॉज का उपयोग करने के बीच अंतर

  3. ओरेकल क्लाउड:एक स्वायत्त लेनदेन प्रसंस्करण (एटीपी) डेटाबेस बनाना

  4. NLS_CHARSET_ID () Oracle में फ़ंक्शन

  5. Oracle PLSQL ब्लॉक संरचना और प्रकार