Hybris 灵活的搜索联合查询来获取产品
Hybris Flexible search union query to fetch products
code Attribute1(String)
A C
B D
C Empty
D Empty
如何获得所有 A、B、C、D 的 pk
注意:使用字符串值 C、D 我想使用灵活搜索查询获取产品 C、D 和 A、B 的 pk
详情:
我有一个产品列表。
在每个产品中都有一个名为 "X" 的属性,其中包含字符串类型的产品 ID 代码。
注意:"Product ID Code" 表示产品列表中的另一个产品 "Product ID"。
现在我想根据产品 ID 代码获取产品包?
我不是很明白,不过你可以这样试试
select {p1.pk},{p2.pk} from {product as p1},{product as p2} WHERE {p1.Attribute1} = {p2.code}
你可以添加过滤器
AND {p1.Attribute1} in ('C','D')
使用 UNION
SELECT uniontable.PK FROM
(
{{
SELECT {p1:PK} AS PK FROM {Product AS p1},{Product AS p2}
WHERE {p1.code} = {p2.Attribute1}
}}
UNION ALL
{{
SELECT {p:PK} AS PK FROM {Product AS p}
WHERE {p1.Attribute1} is not empty
}}
) uniontable
有过滤器
SELECT uniontable.PK FROM
(
{{
SELECT {p1:PK} AS PK FROM {Product AS p1},{Product AS p2}
WHERE {p1.code} = {p2.Attribute1} AND {p2.Attribute1} in ('C','D')
}}
UNION ALL
{{
SELECT {p:PK} AS PK FROM {Product AS p}
WHERE {p.Attribute1} in ('C','D')
}}
) uniontable
code Attribute1(String)
A C
B D
C Empty
D Empty
如何获得所有 A、B、C、D 的 pk
注意:使用字符串值 C、D 我想使用灵活搜索查询获取产品 C、D 和 A、B 的 pk
详情:
我有一个产品列表。
在每个产品中都有一个名为 "X" 的属性,其中包含字符串类型的产品 ID 代码。
注意:"Product ID Code" 表示产品列表中的另一个产品 "Product ID"。
现在我想根据产品 ID 代码获取产品包?
我不是很明白,不过你可以这样试试
select {p1.pk},{p2.pk} from {product as p1},{product as p2} WHERE {p1.Attribute1} = {p2.code}
你可以添加过滤器
AND {p1.Attribute1} in ('C','D')
使用 UNION
SELECT uniontable.PK FROM
(
{{
SELECT {p1:PK} AS PK FROM {Product AS p1},{Product AS p2}
WHERE {p1.code} = {p2.Attribute1}
}}
UNION ALL
{{
SELECT {p:PK} AS PK FROM {Product AS p}
WHERE {p1.Attribute1} is not empty
}}
) uniontable
有过滤器
SELECT uniontable.PK FROM
(
{{
SELECT {p1:PK} AS PK FROM {Product AS p1},{Product AS p2}
WHERE {p1.code} = {p2.Attribute1} AND {p2.Attribute1} in ('C','D')
}}
UNION ALL
{{
SELECT {p:PK} AS PK FROM {Product AS p}
WHERE {p.Attribute1} in ('C','D')
}}
) uniontable