0
繼續在我的MySQL到Rails的問題迄今操作,什麼是寫下面的查詢的Rails的方式:Rails的方式寫在MySQL
SELECT COUNT(searchTerm) AS percent, searches.*
FROM `searches`
WHERE `results` = 0 AND searchDate > DATE_SUB(CURDATE(), INTERVAL 7 DAY)
GROUP BY `searchTerm`
ORDER BY percent DESC, searchDate DESC
我得到儘可能下面的代碼,但此行AND searchDate > DATE_SUB(CURDATE(), INTERVAL 7 DAY)
我不知道如何在Rails中表示,或者甚至可能。
where("results = 0").group('searchTerm').count('searchTerm')
我能避開它通過發出的find_by_sql但想嘗試堅持「Rails的道路」
感謝
編輯: 我有這樣的一個方法中我的類調用搜索,像這樣:
def self.no_results
where("results = 0").group('searchTerm').count('searchTerm')
end
EDIT2: 我不得不這樣說寫:
select("searches.*, COUNT(searchTerm) AS percent").where("results = 0 AND searchDate > DATE_SUB(CURDATE(), INTERVAL 7 DAY)").group("searchTerm").order("percent DESC, searchDate DESC")
由於使用"searchDate > ?", DATE_SUB(CURDATE(), INTERVAL 7 DAY)
會給我一個語法錯誤。
很抱歉,但我會怎麼把這個變成我的方法,如果我複製他們爲你發佈的這些給我的錯誤。 – kakubei
我想我明白了,我只是愚蠢的,讓我來運行它,看看會發生什麼。 – kakubei