0
查詢,這是原始查詢軌道重構正確sql注入
where(countries.map{|c| "zones.countries LIKE '%#{c}%'"}.join(' OR '))
現在我想重寫此查詢使用?這樣的運營商
where(countries.map{|c| "zones.countries LIKE ?", "%#{c}%"}.join(' OR '))
但它不起作用。任何建議? THX
嘗試此之前的SO問題:http://stackoverflow.com/questions/4430578/how-to-do-like-query-in-arel-and-rails-3 – MrDanA 2012-07-12 13:21:03
@davide - 您正在編寫的查詢的一個性能提示。 1.循環查詢不是一個好主意2.使用具有多個OR的Like子句會減慢查詢速度。嘗試將Like轉換爲=並獲取記錄。此查詢不會在大型數據集上擴展。只是拋出這個想法讓我知道這聽起來對你來說。 – Raghu 2012-07-12 13:30:23