開發過程當中碰到一個關於mysql 全文檢索的問題,控制檯打印的SQL語句拿到數據庫裏執行,結果不對。後來發現原來是少了雙引號。下面是網上找到的資料,我是看到這個才意識到本身的問題。mysql
這是以前在數據庫執行的SQL語句,檢索結果上萬條。sql
SELECT DISTINCT c.Rm_Code, c.Tsr_Code, c.TradeName, c.Location, c.Tel_Number, c.Url, c.Nss_category1, c.Nss_category2 FROM CompanyMst c INNER JOIN Tradename_keyword t ON t.rm_code = c.rm_code WHERE c.Show_flag = 0 AND MATCH(t.keyword_unicode)AGAINST( '30d1 30bd 30ca ' IN BOOLEAN MODE ) ORDER BY LstEntDtm DESC, Rm_Code ASC
這是以後改正後在數據庫執行的SQL語句,檢索結果11條。數據庫
SELECT DISTINCT c.Rm_Code, c.Tsr_Code, c.TradeName, c.Location, c.Tel_Number, c.Url, c.Nss_category1, c.Nss_category2 FROM CompanyMst c INNER JOIN Tradename_keyword t ON t.rm_code = c.rm_code WHERE c.Show_flag = 0 AND MATCH(t.keyword_unicode)AGAINST( '"30d1 30bd 30ca "' IN BOOLEAN MODE ) ORDER BY LstEntDtm DESC, Rm_Code ASC