Hybris 关系型 FlexibleSearch 选择

Hybris relational FlexibleSearch selection

Hybris 为同一基本商店的用户创建多个购物车。如何 select 每个商店有超过一个购物车的用户?

稍后我会对它们进行排序并删除最旧的。

SELECT {u.code} as userCode,
       {c.code} as cartCode,
       {c.site} as cartSite
FROM {User as u join Cart as c on {u.pk} = {c.user}}
WHERE...

使用这个:

select {u.pk}, {b.pk}, count(distinct({c.pk})) 
from {
   user as u 
   join cart as c on {c.user} = {u.pk} 
   join basestore as b on {b.pk} = {c.store}
} 
group by {u.pk}, {b.pk} 
having count(distinct({c.pk})) > 1

如果您使用保存的购物车和报价功能,那么您可以考虑通过添加 WHERE {c.saveTime} IS NULL AND {c.quoteReference} IS NULL

不将其包含在结果中
select {u.pk}, {b.pk}, count(distinct({c.pk})) 
from {
   user as u 
   join cart as c on {c.user} = {u.pk} 
   join basestore as b on {b.pk} = {c.store}
}

WHERE {c.saveTime} IS NULL AND {c.quoteReference} IS NULL
GROUP BY {u.pk}, {b.pk}
having count(distinct({c.pk})) > 1

更新:

获取用户的唯一列表:

select {u.pk} 
from {...