Ruby - 比较MySQL:Result对象的2行结果

时间:2016-11-04 23:33:22

标签: mysql ruby

我希望看看Ruby中MySql:Result对象的最后两行。

我需要确保最近2行中的一个参数不相同。

time= @con.query('select victim, t, TIMESTAMPDIFF(minute, t, now()) as timediff from iCu where userid = "'+user+'" and victim = "'+victim+'" order by t desc limit 2' ) 

这是我的SQL查询。我怎样才能比较我得到的2个值,以确保受害者在这两行中不一样?在MySQL命令或调用后的ruby代码中。

任何帮助表示赞赏。感谢

编辑:更多信息。

我正在使用mysql gem。

2 个答案:

答案 0 :(得分:0)

如果您使用的是mysql2 gem,则可以迭代结果以获得所需的字段:

results.each do |row|
  # conveniently, row is a hash
  # the keys are the fields, as you'd expect
  # the values are pre-built ruby primitives mapped from their corresponding field types in MySQL
  puts row["id"] # row["id"].class == Fixnum
  if row["dne"]  # non-existant hash entry is nil
    puts row["dne"]
  end
end

更多信息here,用于处理Mysql :: Result

答案 1 :(得分:0)

MySql:Result包含Enumerable,因此您可以在first的实例上使用lasteachMySql:Result等方法类。