2012-03-26 52 views
0

我在遷移目錄下有兩個類。如何使用ruby activerecord查詢來選擇單列

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 

我想從表2使用條件table2.table1_id =「1」和table2.name =「A」

如何在紅寶石寫這個只獲取值列? 我想要得到文本值作爲結果。 相同sql查詢

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

回答

0

您可以通過應用這樣的查詢來回顧記錄。

它會給你整行作爲result.You可以迭代通過此數組,並可以得到您的 所需的值。

@array = Table2.where( 「table1_id =?和名=?」,1, 'A')

它將很好地工作。

或者

@array = Table2.find(:第一,:條件=> 「[table1_id = '1' 和名稱= 'A']」

但是Ruby給你的警告,該代碼是不建議使用,但它的工作原理

但是第一個查詢是最要好。

希望它會爲ü作品!!!!

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