SELECT DISTINCT "Users"."id" , "Users".name,
"Users"."surname", "Users"."gender",
"Users"."dob", "Searches"."start_date"
FROM "Users"
LEFT JOIN "Searches" ON "Users"."id" = "Searches"."user_id"
WHERE (SQRT(POW(69.1 * ("Users"."latitude" - 45.465454), 2) + POW(69.1 * (9.186515999999983 - "Users"."longitude") * COS("Users"."latitude"/57.3), 2))) < 20
AND "Users"."status" = true
AND "Users"."id" != 18
AND "Searches"."activity" = \'clubbing\'
AND "Users"."gender" = \'m\'
AND "Users"."age" BETWEEN 18 AND 30
ORDER BY ABS("Searches"."start_date" - date \'2016-07-07\')
因为某些原因上面的查询将返回以下错误:Postgres的DISTINCT查询问题
for SELECT DISTINCT, ORDER BY expressions must appear in select list
我只想要返回唯一用户,但我真的不知道什么是错。
感谢您的帮助
错误信息中你不明白的是什么? –
@GordonLinoff我不知道该怎么做,因为我没有看到任何错误。 start_date已经在SELECT列表 – Anonymous
中。 。它可能需要整个表达式在'select'中。 –