我希望看看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。
答案 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
的实例上使用last
,each
,MySql:Result
等方法类。