我如何使用以下逗号分隔的字符串:
111,222,333
并将其正确格式化为以下sql:
从id IN('111','222','333')
的表中选择全部我正在使用find_by_sql的预准备语句。请帮忙。
答案 0 :(得分:1)
您可以使用map格式化ID:
'111,222,333'.split(',').map { |id| "'#{id}'" }.join(',')
有一种用字符包装字符串的方法,但它让我感到厌烦。因此,丑陋的地图块。
答案 1 :(得分:0)
string = "111, 222, 333"
ids = string.gsub(/(\d)/, '\'\1\'')
query = "select all from table where id IN (#{ids})"