我正在尝试运行 SQL 查询以获取四个随机项目。由于表中product_filter
有多个 touple inproduct
我必须使用DISTINCT
in SELECT
,所以我收到此错误:
对于 SELECT DISTINCT,ORDER BY 表达式必须出现在选择列表中
但如果我把它放在RANDOM()
我的SELECT
它将避免DISTINCT
结果。
有人知道如何使用DISTINCT
该RANDOM()
功能吗?以下是我有问题的查询。
SELECT DISTINCT
p.id,
p.title
FROM
product_filter pf
JOIN product p ON pf.cod_product = p.cod
JOIN filters f ON pf.cod_filter = f.cod
WHERE
p.visible = TRUE
LIMIT 4
ORDER BY RANDOM();