如何使用ruby activerecord查询选择单列

时间:2012-03-26 05:31:49

标签: activerecord ruby-1.9.2

我在迁移目录下有两个班级。

class1
  create_table :table1 do |t|
    t.integer :name
  end
end

class2
  create_table :table2 do |t|
    t.integer :table1_id
    t.integer :name
    t.text :value 
   end
end

我想使用条件table2.table1_id =“1”和table2.name =“A”

从table2中仅获取值列

如何在ruby中写这个? 我希望得到文本值。 和sql query一样

select value from table2 where table1_id = 1 and name = 'A';

2 个答案:

答案 0 :(得分:0)

您可以通过应用此类查询来检索记录。

它会给你整行。你可以遍历这个数组并获得你的数据 期望值。

@array = Table2.where(“table1_id =?and name =?”,1,'A')

它会正常工作。

或者

@array = Table2.find(:first,:conditions =>“[table1_id ='1'且name ='A']”

但ruby会警告您此代码已弃用,但可以正常使用

但第一个查询最好。

希望它适用于你!!!!

答案 1 :(得分:0)

Table2.where("table1_id = ? And name = ?",1,'A').select("value")