0

この行を「レールウェイ」でどのように記述しますか?

unique_attendees = CourseSessionsUser.count_by_sql(["SELECT count(DISTINCT csu.user_id) AS count_user_id FROM course_sessions_users csu, course_sessions cs WHERE cs.course_id = ? AND csu.course_session_id = cs.id"], @course.id)

クエリ自体は次のとおりです。

SELECT count(DISTINCT csu.user_id) AS count_user_id 
FROM  course_sessions_users csu, 
      course_sessions cs 
WHERE cs.course_id = ? 
AND csu.course_session_id = cs.id
4

1 に答える 1

1

countレールの使用方法

 count = CourseSessionsUser.count('csu.user_id',
  :distinct => true, :conditions => ["cs.course_id = ?", @course.id]
  :joins => "cs LEFT JOIN course_sessions_users csu ON cs.id = csu.course_session_id")

条件が一致する場合、これはゼロ以外の整数を直接返します。それ以外の場合はゼロを返します。

于 2012-09-24T07:31:52.493 に答える