嗨,我已經打了一個問題,我的SQL查詢,我有一個包含3列,一個用於車輛品牌,一個用於模式,一個用於模型版本的表。檢查多個列的級聯匹配的MySQL
所以我的數據被分割像
BRAND || MODEL || MODEL VERSION
RENAULT || R4 || R4 1.1 GTL
我一直在問的輸入與取代我們目前下拉菜單系統,使用戶更容易選擇他們的車輛。
我正在使用jQuery自動完成,我的查詢看起來像這樣。
SELECT DISTINCT CONCAT (brand, ' ', model, ' ', version) as data from vehicles WHERE brand LIKE '%Golf%' OR model LIKE '%Golf%' OR version LIKE '%Golf%' LIMIT 5
到目前爲止好,這將輸出「雷諾R4 R4 1.1 GTL」如果我鍵入「雷諾」 ......這裏的問題當用戶插入類似雷諾R4,而不僅僅是來「雷諾」
因爲他們已經包含在型號名稱以及該品牌那麼它並沒有真正匹配任何我的數據庫列和我的Ajax調用返回沒有結果的。 我需要從該concat中查詢實際結果集,以便用戶輸入的內容與結果匹配,但我不知道如何執行此操作。
無奈之下,我試圖輸入where data LIKE '%RENAULT R4%'
,但正如預期的那樣,這也行不通......我在這種情況下能做什麼?任何幫助,將不勝感激。
@Josef_Kufner全文索引正在恢復一切,如果我對陣雷諾R4返回雷諾的所有實例,而不僅僅是匹配字符串的那些... :( – JonnySerra
匹配,對運營商的回報得分這個行與查詢有多相關,你可以按照分數對行進行排序,並首先提供最好的匹配,並且還有更多的選擇如何使用全文 - 查看文檔並稍微玩一下。 –