1

Railsでselectを使用して結合クエリを実行していますが、結合されたテーブルの結果にはnull IDがあります...

@result = Table.joins(:join_table).select(['join_table.id', 'name', 'random_attr', 'created_at']).where('table.random_attr = ?', @anotherresult.id).order('name ASC')

結果...

[
    {
        random_attr: true
        created_at: "2012-10-31T02:23:07Z"
        id: null
        name: "Joe"
    },
    ....
]

生成されたSQLは次のようになります...

SELECT join_table.id, name, random_attr, created_at FROM `table` INNER JOIN `join_table` ON `join_table`.`id` = `table`.`user_id` WHERE (random_attr = 9) ORDER BY name ASC;

このクエリを mysql で直接実行すると問題なく動作します。

4

0 に答える 0