簡體   English   中英

ruby on rails find_by_sql的等效語句

[英]ruby on rails equivalent statement of find_by_sql

以下等效的find語句是什么?

@mostviews = Post.find_by_sql("select posts.id,posts.title from posts inner join countpages on countpages.post_id = posts.id order by countpages.counts desc limit 5")


@temp = Post.find_by_sql("SELECT posts.id,posts.title, comment_count.count FROM posts INNER JOIN (SELECT post_id, COUNT(*) AS count FROM comments GROUP BY post_id) AS comment_count ON comment_count.post_id = posts.id  ORDER BY count DESC LIMIT 5;")

是否可以使用find或where函數獲得相同的結果?

Post.select("posts.id, posts.title").joins(:countpage).order("countpages.counts desc").limit(5)

這假設計數頁是關聯。 否則,您可以在聯接中更明確(“ INNER JOIN ...”)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM