該場景:我如何使用DISTINCT和ORDER BY RANDOM同時進行SELECT?
我在視圖中有一個模型,我使用的是Django過濾器,所以我需要創建一個由Django過濾器過濾並隨機排序的查詢集。
的問題: Django的過濾器增加了一個清晰到SQL,是這樣的:
SELECT DISTINCT ... WHERE ("products_creditcard"."is_active" = True AND ("products_creditcard"."bank_id" = 3 OR "products_creditcard"."bank_id" = 1 OR "products_creditcard"."bank_id" = 4)) ORDER BY RANDOM()
但產生對PostgreSQL的異常:
錯誤:SELECT DISTINCT,ORDER BY表達式必須出現在選擇列表中 SQL狀態:42P10 字符:1992
我想可能存在任何添加rando的方法米到選擇,任何想法?
Tha壞事是我需要hack django * filters – diegueus9 2012-03-02 19:14:27