2012-03-10 2 views
0

私のアプリで失敗を探していたのはずっと後になって、ついに問題が見つかったように見えます。私はHerokuのは、PostgreSQLデータベースを使用して知っているが、ほとんどの時間は、MySQL DBに基づいてすべての私のアプリケーションが動作しているが、今、私はこのクエリについてのエラーを得た:Heroku - 悪いMySQLクエリ(ActiveRecord)?

Tshirt.joins(:favorites => [:customers]).where(["tshirts.user_id != ?", current_user.id]).order('rand()').limit(3).uniq 

誰かが私に修正するためにどのように任意のヘルプを与えるでしたこの問題? Postgresので事前

+0

をchnageすべきRANDOM()です。あなたは常にプロダクションで使用しているDBMSに対して開発するべきです –

答えて

1

おかげで、rand関数はそうあなたはそれが最終的にはPostgreSQLを実行するときになぜあなたは、MySQLを使用してコードをテストしますご注文の句

+0

はい、1つの問題は 'random()'(解決済み)です。もう1つは '.uniq'です - PostgreSQLではうまく動作しません。私がコメントしてテストするとうまくいくが、PostgreSQLの '.uniq'を使うとこのクエリエラーが出る – user984621

関連する問題