Re: [SQL ] 如何改善 LIKE '%search%' 的效能?

看板Database (資料庫)作者 (畢業了..@@")時間7年前 (2017/08/16 13:50), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串16/18 (看更多)
※ 引述《liisi (小心一點)》之銘言: : 大家午安 : 目前也是遇到 like '%關鍵字%' 效能會變差的問題 : 網站的商品數 超過一百萬筆 : 網站的使用族群 是所有消費者 : 透過關鍵字 來模糊搜尋商品名稱 甚至是二個以上的關鍵字來搜尋 : ( 商品名稱 like '%關鍵字A%' or 商品名稱 like '%關鍵字B%' ) : 測試過時間 需要 2 ~ 2.4秒左右 : 爬文了 也google過 了解如果把%放在前頭 會讓索引無效 : 我也自己試了一下 '關鍵字%' 時間0.0005秒 (也差太多了....) : 但是關鍵字搜尋 不太可能用 like '關鍵字%'找資料 : 用其他的語法 locate試了一下 也是很慢 : 想請問大家 在語法的部分 目前還沒辦法解決嗎? google "full text index" 或 "全文檢索" 有些資料庫有內建這個功能 但要看對中文支援的好不好 沒有的話就用elasticsearch(ES), 或solr (前者比較多人用) 使用方法是 塞文件改塞ES 然後查詢的時候對ES做查詢 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.163.46.230 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1502862603.A.638.html
文章代碼(AID): #1PazqBOu (Database)
討論串 (同標題文章)
文章代碼(AID): #1PazqBOu (Database)