在 Rails 3 中,我使用以下代码来查询 MySQL 数据库:
MyData.joins('JOIN (SELECT id, name FROM sellers) AS Q
ON seller_id = Q.id').
select('*').
joins('JOIN (SELECT id, name FROM users) AS T
ON user_id = T.id').
select("*").each do |record|
#..........
然后,再往下一点,我尝试使用以下代码访问“名称”:(请注意,卖家和用户都有一个名称列)。
str = record.name
这条线给了我一个“用户名”而不是“卖家名”,但它不应该什么都不给吗?由于我用一个名称列加入了多个表,我不应该得到像“列'名称'不明确”这样的错误吗?为什么没有发生这种情况?
顺便说一句,无论我是否包含第一个“select('*')”行,代码的行为方式都是相同的。
谢谢你。