PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Rails включва заявка с условия, които не връщат всички резултати от лявата таблица

Ако добавите WHERE състояние на колоните от дясно таблица след LEFT JOIN , го принуждавате да действа като INNER JOIN .

Решение

Издърпайте израза нагоре в условието към LEFT JOIN .
Съгласно страницата с ръководство, което цитира себе си :

И:

Може да сте прочели погрешно това изречение.

Това трябва да прави каквото искаш:

Post.joins('LEFT OUTER JOIN images ON images.post_id = posts.id
                                  AND images.service_name = $$acme$$')

Не съм експерт по Ruby, но извличам това от ръководството тук .
Не съм сигурен как да избягам от единичните кавички, затова вместо това преминах към котиране в долари.




  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. PostreSQL 10 не успява да стартира на Ubuntu 18.04, работещ на Windows подсистема за Linux

  4. Как да съпоставя целочислен атрибут на модел към низ?

  5. Създайте масив в SELECT