[英]How could i loop this query?
我在Oracle中有以下sql查询。
SELECT pr.uuid AS masterproductid,
(case
when xmltype(pr.attributes_de_de).extract('//attr[@name = "SellingPoint1"]/string/text()') IS NOt NULL THEN 'sellingpoint1'
when xmltype(pr.attributes_de_de).extract('//attr[@name = "SellingPoint2"]/string/text()') IS NOt NULL THEN 'sellingpoint2'
END
) as testt
FROM product pr WHERE pr.defaultproductvariationid =(SELECT prv.uuid FROM productvariation prv WHERE prv.uuid = '3rep_vEBP6IAAAE83REjnPbb' AND pr.typecode='16')
在这种情况下,当'sellingpoint1'和'sellingpoint2'都不为空,但是此查询仅返回Sellingpoint1时,我想要'sellingpoint2',我又该如何获得呢?
感谢帮助
这将其分为两列:
SELECT pr.uuid AS masterproductid,
(case when xmltype(pr.attributes_de_de).extract('//attr[@name = "SellingPoint1"]/string/text()') IS NOt NULL
THEN 'sellingpoint1'
end) as testsellingpoint1,
(case when xmltype(pr.attributes_de_de).extract('//attr[@name = "SellingPoint2"]/string/text()') IS NOt NULL
THEN 'sellingpoint2'
END
) as testsellingpoint2
FROM product pr WHERE pr.defaultproductvariationid =(SELECT prv.uuid FROM productvariation prv WHERE prv.uuid = '3rep_vEBP6IAAAE83REjnPbb' AND pr.typecode='16')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.