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

रेल - कस्टम-नामित संघों के साथ जुड़ने का उपयोग करना

where वास्तविक तालिका नाम की अपेक्षा करता है, यह इसे केवल SQL में सम्मिलित करता है:

Article.where(whatever: {you: 'want'}).to_sql
=> "SELECT `articles`.* FROM `articles` WHERE `whatever`.`you` = 'want'"

तो आप इसका उपयोग कर सकते हैं:

Measurement.joins(:examination).where(test_structures: { year: 2016, month: 5 })

लेकिन यह अच्छा नहीं है

फिर आप टेबल के नाम पर निर्भर करते हैं जबकि मॉडल को ऐसी चीजों को अमूर्त करना चाहिए। आप merge का उपयोग कर सकते हैं :

Measurement.joins(:examination).merge(TestStructure.where(year: 2016, month: 5))


  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. चुनिंदा क्वेरी में लूपिंग

  3. RoR:postgres में change_column नहीं कर सकता, MySQL में ठीक (विकास के लिए MySQL, Heroku पर Postgres)

  4. Postgresql JDBC टेबल वैल्यूड पैरामीटर्स

  5. पोस्टग्रेज ट्रिग्राम वर्ड_सिमिलरिटी फंक्शन जिन इंडेक्स का उपयोग क्यों नहीं कर रहा है?