我votes
表看起來像這樣:SQL查詢來獲取「投得分」
id: integer
vote: boolean
voteable_id: integer
voteable_type: string
voter_id: integer
voter_type: string
的vote
列確定該行是否代表「上票」(vote = true
)或「向下票」(vote = false
) 。
voteable_type
是被上投類的東西,voteable_id
是對被投的東西的ID,voter_type
是班裏的選民,而voter_id
是選民的ID。
我需要的是一個查詢,以獲得最高ñposts
由「中投得分」,其中「投得分」被定義爲(的選票後具有數)降序排列 - (中該職位的反對票數)。如果
獎勵積分您的解決方案不要求我訴諸find_by_sql()
更多的積分(我在Rails的工作),如果您的解決方案工作在SQLite和PostgreSQL的(以同樣的方式,雖然它更重要的是,它在PostgreSQL中工作)。
什麼數據庫? 。 – cletus 2009-09-13 01:31:12
如果您將此存儲爲1/-1而非true/false,那麼您也可以使您的生活變得更加輕鬆。 – cletus 2009-09-13 01:32:06
錯誤,是不是1和0? – Alex 2009-09-15 18:34:05