如何在 MySQL ActiveRecord 中使用 DISTINCT ON 的等效項
要求是從事件中檢索所有不同用戶的最新訪問桌子。在 ActiveRecord 中將 DISTINCT ON(user_id) 子句與 MySQL 一起使用會導致語法錯誤。
DISTINCT ON 的MySQL 等效項是將GROUP BY 與MAX() 函數一起使用:
<code class="ruby">Events.group(:user_id).maximum(:time)</code>
此查詢將以user_id 分組,並傳回每個群組的時間列的最大值。輸出將以 user_id 為鍵、最新存取時間為值的雜湊值:
{ 21 => "2018-12-18 09:44:59", 42 => "2018-12-19 12:08:59" }
注意: DISTINCT ON(columns) 是 PostgreSQL 特定的語法。 MySQL 不直接支援此語法。
以上是如何取得MySQL ActiveRecord中所有唯一使用者的最新造訪次數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!