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

पोस्टग्रेज LIKE '...%' अनुक्रमणिका का उपयोग नहीं करता है

अगर आप text_pattern_ops के साथ इंडेक्स बना रहे हैं, तो PostgreSQL ऐसा करेगा। ऑपरेटर, या यदि आप C कोलेशन का उपयोग कर रहे हैं।

यदि आप कुछ यादृच्छिक अन्य संयोजन का उपयोग कर रहे हैं, तो PostgreSQL इसके बारे में कुछ भी नहीं निकाल सकता है। इसे सामान्य "en_US.utf8" संयोजन में देखें।

select * from (values ('03.000221.1'), ('03.0002212'), ('03.000221.3')) f(x) order by x;
      x      
-------------
 03.000221.1
 03.0002212
 03.000221.3

जो तब स्वाभाविक रूप से आपकी क्वेरी के साथ इस गलत उत्तर की ओर ले जाता है:

select * from (values ('03.000221.1'), ('03.0002212'), ('03.000221.3')) f(id)
    where ((id >= '03.000221.'::text) AND (id < '03.000221.Z'::text))
     id      
-------------
 03.000221.1
 03.0002212
 03.000221.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. SQLServer के NoLock संकेत के PostgreSQL समतुल्य

  2. Postgres . के लिए सर्वर से कनेक्ट करने में असमर्थ

  3. PostgreSQL - डेटाबेस डंप से एक तालिका को पुनर्स्थापित करना

  4. जब कोई py.test चुपचाप लटक जाए तो क्या करें?

  5. PostgreSQL कस्टम अपवाद शर्तें