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

यह ~~ किसी भी () के साथ अलग क्यों काम करता है?

समस्या यह है कि आपकी सबक्वायरी का परिणाम एक स्ट्रिंग के रूप में व्याख्या किया जाता है, सरणी नहीं। ऐसा इसलिए है क्योंकि ये दोनों रूप शब्दार्थ रूप से भिन्न हैं:

~~ ANY ('...')  -- will be interpreted as an array literal

और

~~ ANY (SELECT ...)  -- will compare with all query results in turn

तो आप बस लिख सकते हैं:

WHERE lower(name) ~~ ANY
      (SELECT DISTINCT '%' || lower(brand) || '%'
       FROM my_table
       WHERE source = 'Orig')



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. प्राथमिक कुंजी को समग्र प्राथमिक कुंजी में बदलना

  2. मैं pgbackups का उपयोग करके हेरोकू पर स्टेजिंग के लिए उत्पादन डेटाबेस को कैसे स्थानांतरित करूं? त्रुटि प्राप्त करना

  3. Postgresql पर शीर्षकों के साथ तालिका को CSV के रूप में कैसे निर्यात करें?

  4. PostgreSQL में किसी दिनांक से दिनों को घटाएं

  5. दूरस्थ मशीन से libpq का उपयोग करके PostgreSQL में बाइनरी लार्ज ऑब्जेक्ट (BLOB) डालें