我正在处理应该返回产品代码或变体代码的查询,如果有一个连接并通过在产品表中找到的修改属性(以选择最近修改的产品)对它们进行排序。有我的查询:
SELECT IF(Length(variation_code) > 0, variation_code, prod_code) AS prod_code,
product.modified,
price
FROM product
LEFT JOIN variation_row
ON product.prod_code = variation_row.product_code
WHERE prod_code IN (SELECT prod_code
FROM product)
AND price > 0
GROUP BY prod_code
ORDER BY modified DESC
LIMIT 6
问题是,如果同一产品连续修改多次,它可能会多次出现在结果集中。
我知道 DISTINCT 仅用于获取与其他值不同的值,但我无法将其实现到我的查询中,因为 IF 用于获取 prod_code。
有什么方法可以修改我的脚本,使其返回相同的结果但具有不同的 prod_codes?