我想在我的Rails應用程序中執行SQL查詢。以下執行正常,因爲它正在尋找完全匹配:使用%和LIKE的Rails中的SQL查詢
connection.query("SELECT *
FROM test
WHERE y=#{connection.quote(name)}
ORDER BY x ASC")
我想使用LIKE運算符來查找部分匹配項。在SQL它會是什麼樣子:
SELECT * FROM test WHERE y LIKE '%John%' ORDER BY x ASC
怎樣在我的紅寶石查詢做到這一點?我嘗試在幾個地方添加%
,但它不起作用。我得到的錯誤,說我的查詢正在尋找的%'John'%
代替'%John%'
connection.query("SELECT *
FROM test
WHERE y LIKE #{%connection.quote(name)%}
ORDER BY x ASC")
@spickermann我感謝你標記這一點,但對我來說,它似乎不像是同一個查詢結構。通過閱讀您標記的帖子,這讓我覺得我可能會錯誤地寫出我的查詢,或者可能更不恰當,不安全。你能夠重新打開這個問題,或者向我解釋我如何將你引用的答案應用於我將串連接起來的情況,以除去多餘的''(撇號) - 謝謝! – jdesilvio