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

Oracle और sql सर्वर और सामान्य पेजिंग विधि के साथ पेजिंग

दुर्भाग्य से, एक क्वेरी द्वारा लौटाई गई पंक्तियों की सीमा को प्रतिबंधित करने के तरीके एक DBMS से दूसरे में भिन्न होते हैं:Oracle ROWNUM का उपयोग करता है (देखें ocdecio का उत्तर), लेकिन ROWNUM SQL सर्वर में काम नहीं करेगा।

शायद आप इन अंतरों को एक फ़ंक्शन के साथ समाहित कर सकते हैं जो किसी दिए गए SQL कथन और पहली और अंतिम पंक्ति संख्या लेता है और लक्ष्य डीबीएमएस के लिए उपयुक्त पेजिनैट एसक्यूएल उत्पन्न करता है - यानी कुछ ऐसा:

sql = paginated ('select empno, ename from emp where job = ?', 101, 150)

जो लौटेगा

'select * from (select v.*, ROWNUM rn from ('
 + theSql
 + ') v where rownum < 150) where rn >= 101'

Oracle के लिए और SQL सर्वर के लिए कुछ और।

हालांकि, ध्यान दें कि Oracle समाधान उन परिणामों में एक नया कॉलम RN जोड़ रहा है जिनसे आपको निपटने की आवश्यकता होगी।



  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 में किसी मान में कम से कम एक संख्यात्मक अंक है

  2. यदि Oracle वॉलेट का उपयोग किया जाता है तो सही JDBC URL सिंटैक्स क्या है?

  3. एक ही स्टेटमेंट में एक इंसर्ट की आईडी प्राप्त करें

  4. IPv6 के लिए रेगुलर एक्सप्रेशन (RegEx) IPv4 से अलग है

  5. ओरेकल में सीएचआर () फ़ंक्शन