我必須查詢需要管理檔案的用戶。 用戶有一個最小和最大字段,如果檔案號碼的最後一個號碼在這兩個值之間,用戶需要找到。 這是圍繞範圍工作之間大多數查詢的另一種方式。Ruby Activerecord查詢與範圍比較
目前我必須使用普通的sql,下面的工作,但我想使用activerecord查詢(第一個錯誤)或至少一個更安全的方法(第二個錯誤)。
爲了更好的可讀性,我縮短了字段的名稱。
dosnr = 123456
# error invalid identifier
# User.where(dosnr.to_s[-1] => :min..:max)
# error invalid character 6
# User.where("#{dosnr.to_s[-1]} between ? and ?, min, max ")
# sql works
User.where("#{dosnr.to_s[-1]} between min and max ")
如何在不使用sql的情況下執行此操作,或者不必循環所有記錄或不必使用多個where語句?
'dosnr'是用戶表中的一列嗎?什麼是數據類型?我相信在activerecord中沒有這樣的方法,你使用哪個SQL? – Surya
no dosnr是一個變量,sql是最後一行 – peter
這是否意味着min和max是列,並且您需要從dosnr變量的最後一個整數中查找所有用戶b/w min和max? – Surya