sql >> Database teknologi >  >> RDS >> PostgreSQL

Skinner - få genstande af genstande MED dubletter

inkluderer AREL-metoden vil vælge mellem to strategier til at lave forespørgslen, hvoraf den ene blot udfører to forskellige forespørgsler, og den anden laver en INNER JOIN. I begge tilfælde vil produkterne være forskellige.

Du skal manuelt lave en højre ydre joinforbindelse:

Product.joins('RIGHT JOIN categories ON categories.product_id = products.id').where(categories: { id: @my_product.categories.pluck(:id) } )

tilføjer også .preload(:categories) hvis du vil beholde den ivrige indlæsning af kategorierne.



  1. Hvordan FROM_BASE64() virker i MariaDB

  2. mysql min hvor erklæring

  3. JSON_SET() vs JSON_INSERT() vs JSON_REPLACE() i MySQL:Hvad er forskellen?

  4. Gem funktionsnavnet i databasen, og kør det derefter