<分区>
在 Ruby 中从 X
列中找到最长 字符串的最有效方法是什么?
更新:
这也有点效果:
def self.length_of_longest_number
Invoice.order("LENGTH(number) DESC").first.number.length
end
只是想知道它是否有效。如果它在 MySQL 和 Postgres 中工作...
<分区>
在 Ruby 中从 X
列中找到最长 字符串的最有效方法是什么?
更新:
这也有点效果:
def self.length_of_longest_number
Invoice.order("LENGTH(number) DESC").first.number.length
end
只是想知道它是否有效。如果它在 MySQL 和 Postgres 中工作...
最佳答案
使用 MySql:
# Change your model name and field to your needs
Participant.order("MAX(CHAR_LENGTH(first_name)) desc").limit(1)
# works too:
Participant.order("MAX(CHAR_LENGTH(first_name)) desc").first
# and this is the most efficient to get the field directly:
Participant.limit(1).order("MAX(CHAR_LENGTH(first_name)) desc").pluck(:first_name)
使用 postgres:
Participants.limit(1).order("MAX(CHAR_LENGTH(name)) desc").group("id").pluck(:name)
关于ruby-on-rails - 如何使用 Ruby on Rails 查找列中最长的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18878653/
相关文章:
ruby-on-rails - 在Haml::Engine中使用Rails View 助手
javascript - 从 Rails 3 中的 View 调用 javascript 函数
ruby-on-rails - 使用 Twitter Bootstrap 和 Simple Form 2.0 在一行中进行多个输入
ruby-on-rails - Rails 引擎 : shared asset dependencies
ruby-on-rails - rails,为新路由添加一个参数
ruby-on-rails - Ruby 仅用另一个字符串替换完全匹配的字符串
ruby - 如何检查一个值是否是 Integer()、Float() 或 Rational() 的有效输入?