按多行选择相关对象的正确方法

鲁斯塔姆·A·加萨诺夫

假设我有 3 个表:Houseshas_many Wardrobeshas_many Clothes

houses    wardrobes   clothes
------    ---------   -------
id        id          id
name      house_id    wardrobe_id
          name        name

如何,有一个House我可以选择它Wardrobesjeansshirt作为Clothes

由于明显原因不起作用的示例代码:

@house.wardrobes.joins(:clothes)
  .where("clothes.name = 'jeans'")
  .where("clothes.name = 'shirt'")

欢迎任何 SQL/ActiveRecord 答案。

戈登·利诺夫

您可以使用聚合来获取同时包含这两种衣物的所有衣柜:

select w.id, w.house_id
from wardrobes w join
     clothes c
     on c.wardrobe_id = w.id
where c.name in ('jeans', 'shirt')
group by w.id, w.house_id
having count(distinct c.name) = 2;

如果您只想要一所房子,您可以按house_idin过滤where

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

通用按相关对象排序

来自分类Dev

按正确顺序从多行中减去

来自分类Dev

R按条件行号选择多行

来自分类Dev

按下Ctrl键无法选择多行。在下面描述我的方法

来自分类Dev

MySQL选择与相关表中的多行匹配的行

来自分类Dev

Django选择多个层次的相关对象

来自分类Dev

lodash的“按对象路径选择”?

来自分类Dev

选择正确的Http方法

来自分类Dev

有没有一种方法可以选择与另一个对象相关的数组对象?

来自分类Dev

选择相关的选择相关

来自分类Dev

无法获取SELECT返回的多行以按特定列正确汇总

来自分类Dev

在下拉菜单中按值选择的正确方法是什么?

来自分类Dev

SQL Server按外键分组并选择相关列

来自分类Dev

条件Api:按隐式相关表排序/选择

来自分类Dev

按属性分类的正确方法

来自分类Dev

与Focus相关的选择器控制方法

来自分类Dev

如何按相关对象数排序查询集?

来自分类Dev

Django ORM:按相关对象的多个属性过滤

来自分类Dev

Rails-Postgres-按相关对象计数分组

来自分类Dev

如何按猫鼬中相关对象的数量排序

来自分类Dev

按多列分组为对象和相关列表

来自分类Dev

将选择器应用于jquery对象的正确方法?

来自分类Dev

正确使用Django的models.Manager用于相关对象

来自分类Dev

如何为敲除中的相关对象正确构造viewmodel?

来自分类Dev

Django:如何正确显示相关模型中的对象列表?

来自分类Dev

查询以按关联对象的数量选择

来自分类Dev

无法按类别选择列表对象

来自分类Dev

Linq 按对象分组然后选择

来自分类Dev

如何按功能选择对象?