我正在製作walkathon rails應用程序。每個步行者都由每圈承諾最高金額的人贊助。在rails/postgres中的閾值總和
我有一個名爲sponsorships
的表,它具有列walker_id
,amount_per_lap
和max_amount
。我想編寫一個SQL查詢來確定步行者已經籌集了多少錢。
還有一個walkers
表具有id
,name
和laps
列。
我知道這不是有效的SQL,但我想要這樣的東西,但不知道最好的辦法。在執行查詢之前,可以提供walker_id和laps。
SELECT SUM(MIN(LAPS * sponsorships.amount_per_lap,sponsorships.max_amount))FROM贊助 其中sponsorships.walker_id = 1;
我在rails中做這個,所以我試圖弄清楚如何在Arel中做這樣的事情,但是弄不清楚。
任何幫助將不勝感激。
編輯:澄清walkers
表。
EDIT2:偶然有最大的,而不是分鐘,僞代碼
步行者有一圈專欄 - 我會編輯問題 – Cyrus