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

वेतन से पंक्ति संख्या का चयन करें जहां पंक्ति संख्या =3;

Oracle ROWNUM को क्रमिक रूप से मान प्रदान करता है क्योंकि पंक्तियाँ क्वेरी द्वारा निर्मित होती हैं - इस प्रकार, प्राप्त की गई पहली पंक्ति को ROWNUM =1 प्राप्त होता है, दूसरी पंक्ति को प्राप्त करने के लिए ROWNUM =2 प्राप्त होता है, प्राप्त की गई तीसरी पंक्ति को ROWNUM =3, आदि प्राप्त होता है। सूचना - एक पंक्ति के लिए असाइन किए जाने के लिए ROWNUM=3 दो पूर्ववर्ती पंक्तियाँ अवश्य प्राप्त की जानी चाहिए। और यही कारण है कि आपकी क्वेरी कोई पंक्ति नहीं लौटाती है। आप तीसरी पंक्ति के लिए डेटाबेस से पूछ रहे हैं - लेकिन पंक्ति 1 और 2 कभी नहीं लाई गई हैं।

प्रदर्शित करने के लिए, निम्नलिखित प्रश्नों को चलाने का प्रयास करें:

SELECT S.* FROM SALARY S;          -- Should return all rows
SELECT ROWNUM, S.* FROM SALARY S;  -- Should return all rows with ROWNUM prepended
SELECT ROWNUM, S.* FROM SALARY WHERE ROWNUM=3;  -- Should return no rows

अपनी समस्या को हल करने के लिए, निम्न प्रयास करें:

SELECT ROW_NUMBER FROM
  (SELECT ROWNUM AS ROW_NUMBER, S.* FROM SALARY S)
  WHERE ROW_NUMBER = 3;

साझा करें और आनंद लें।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle में SQRT () फ़ंक्शन

  2. Oracle 18c नई सुविधा:विभाजन का ऑनलाइन संशोधन

  3. NLS_CHARSET_NAME () Oracle में फ़ंक्शन

  4. NLS_COLLATION_ID () Oracle में कार्य

  5. अमान्य सामान्य उपयोगकर्ता या भूमिका का नाम