Rails 3 ActiveRecord временных таблиц - PullRequest
4 голосов
/ 24 марта 2011

Как мне сделать следующее в Rails 3?

CREATE TEMPORARY TABLE average_user_total_time 
  (SELECT SUM(time) AS time_taken 
        FROM scores 
        WHERE created_at >= '2010-10-10' 
                and created_at <= '2010-11-11' 
        GROUP BY user_id);

SELECT COUNT(*) from average_user_total_time WHERE time_taken > 60 and time_taken < 600

Я пытался сделать что-то вроде

create_table (:average_user_total_time), :temporary=> true do |t|

end

но не уверен, как именно его использовать. Мне нужно использовать его в моем приложении, а не в миграции.

1 Ответ

6 голосов
/ 24 марта 2011

Спасибо, Андрей, в итоге я воспользовался следующим советом.

http://richtextblog.blogspot.com/2007/09/mysql-temporary-tables-and-rails.html

...