這可能是一個有點痛苦,但要做到這一點的一種方式是像和substring_index()
where concat(' ', description, ' ') like concat('% ', substring_index(@SearchString, ' ', 1), ' %') and
concat(' ', description, ' ') like concat('% ', substring_index(substring_index(@SearchString, ' ', 2), ' ', -1), ' %') and
concat(' ', description, ' ') like concat('% ', substring_index(substring_index(@SearchString, ' ', 3), ' ', -1), ' %') and
concat(' ', description, ' ') like concat('% ', substring_index(substring_index(@SearchString, ' ', 4), ' ', -1), ' %')
嵌套substring_index()
返回列表的第n項。
如果您正在尋找一個真實代碼的代碼只是在description
字段中一起出現,那麼您的數據庫設計就會不正確。每個代碼需要一個單行關聯表。
如果描述實際上是文本描述,那麼您可能確實需要全文索引。這將使用match . . . against
解決您的問題。
用空格分解搜索文本並繼續。或者如果你嘗試過任何東西后發佈。 – Rikesh
你究竟需要什麼? –
@Rikesh ..我知道我可以爆炸搜索文本,並使用OR條件,是否有另一種方式來處理此.. –