4
MyModel.select('a, b, c').all
のRails 3:SQL関数を含むクエリ
これでは、データベースから次の値を返します。
+---+---+---+
| a | b | c |
+---+---+---+
| 1 | 2 | 3 |
| 4 | 5 | 6 |
| 7 | 8 | 9 |
+---+---+---+
は質問:どのように私は、SQL関数の結果と4番目の列が含まれるのでしょうか?
+---+---+---+---------------------+
| a | b | c | MYFUNCTION(a, b, c) |
+---+---+---+---------------------+
| 1 | 2 | 3 | 123 |
| 4 | 5 | 6 | 456 |
| 7 | 8 | 9 | 789 |
+---+---+---+---------------------+
すなわち、以下は動作しませんでした:
:私は、列に有効なモデルの属性の名前を与えることAS
を使用する場合、それは動作しますが、ものの
MyModel.select('a, b, c, MYFUNCTION(a, b, c)').all
を
MyModel.select('a, b, MYFUNCTION(a, b, b) AS c').all
+---+---+-----+
| a | b | c |
+---+---+-----+
| 1 | 2 | 122 |
| 4 | 5 | 455 |
| 7 | 8 | 788 |
+---+---+-----+
私はスコープを利用する必要があるため、これを元のSQLに戻すのではなく、モデルのコンテキスト内で解決したいと考えています。
ご迷惑をおかけして申し訳ございません。
偉大な、そうすることができます!私はこれが返されたモデル(上記のライン009:0への応答)には見えないので、混乱しました。ありがとうございました。 – gjb