次のオブジェクト構造を考えてみましょう。
Product
id : int
name : string
attribute : list of Attribute
Attribute
id : int
name: string
value : string
product_id : int
質問は次のとおりです。QueryOver を使用してサブクエリを作成し、次の条件ですべての製品を返す方法:
同時に次の属性を持つ製品をすべて選択してください:
属性名 = "Color" Value="Red" and 属性名 = "Size" Value="XXL" ?
編集:サンプルSQL:
select * from Product p where
exists (select id from attribute where name = 'Color' and value = 'Red' and product_id = p.id)
and
exists (select id from attribute where name = 'Size' and value = 'XXL' and product_id = p.id)