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

पैटर्न मिलान का उपयोग करने में त्रुटि PostgreSQL में किसी की तरह नहीं

आमतौर पर मैं "नहीं में" कीवर्ड का उपयोग करके पैटर्न मिलान का उपयोग करता हूं।

SELECT kolom1 from tabel where kategori not in ('A', 'B')

फिर मैंने "कोई पसंद नहीं" कीवर्ड का उपयोग करने की कोशिश की

SELECT kolom1 from tabel where kategori not like any (array['A', 'B'])

मुझे लगता है कि परिणाम वही होगा। लेकिन दौड़ने के बाद परिणाम अलग होते हैं। मैं उत्सुक हूं कि परिणाम अलग क्यों हैं और जब मुझे पता चलता है कि कोई भी कीवर्ड कैसे काम करता है, तो यह सच हो जाएगा यदि तत्वों में से एक मिलता है। इसलिए यदि तत्व ए की तुलना किसी भी कीवर्ड की तरह नहीं की जाती है, तो यह सच होगा क्योंकि यह मानदंडों को पूरा करता है, न कि सरणी में तत्वों में से एक, अर्थात् बी और इसके विपरीत। जबकि वांछित परिणाम न तो तत्व ए और न ही तत्व बी है। इस समस्या का उत्तर देने के लिए, "सभी को पसंद नहीं" कीवर्ड का उपयोग किया जाता है।

SELECT kolom1 from tabel where kategori not like all (array['A', 'B'])

संदर्भ
स्टैक ओवरफ्लो


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. psql \copy का उपयोग करके टाइमस्टैम्प कॉलम (dd.mm.yyyy hh.mm.ss) के साथ .csv आयात करना

  2. त्रुटि:संबंध का स्तंभ मौजूद नहीं है PostgreSQL ,इन्सर्ट क्वेरी चलाने में असमर्थ

  3. स्थानीय PostgreSQL से कनेक्ट नहीं हो सकता

  4. PostgreSQL अनुक्रमित कॉलम पर अनुक्रमिक स्कैन क्यों करता है?

  5. विंडोज के लिए पोस्टग्रेएसक्यूएल विकसित करना, भाग 1