2010-05-01 45 views
2

我有一個簡單的MySQL表設置爲全文搜索。在MySQL全文搜索中,'第二'是關鍵字嗎?

| id | title   | 
---------------------- 
| 1 | test event | 
| 2 | Second test | 
| 3 | Larry's event | 
| 4 | this second | 

當我使用查詢:

SELECT * 
FROM EVENTS 
WHERE MATCH (title) AGAINST ('test event' IN BOOLEAN MODE); 

我回來3行;包含'測試事件','第二測試'和'拉里的事件'。

現在如果我運行下面的查詢:返回

SELECT * 
FROM EVENTS 
WHERE MATCH (title) AGAINST ('second' IN BOOLEAN MODE); 

沒什麼......奇怪嗎?

最後,如果我運行查詢:

SELECT * 
FROM EVENTS 
WHERE MATCH (title) AGAINST ('second test' IN BOOLEAN MODE); 

我回來2行;包含'測試事件'和'第二測試'的那些。

我覺得'second'這個詞不能被搜索,或者需要以某種方式逃脫。我錯過了什麼嗎?

回答

1

是的,second是一個停止詞&將ingored。 (您可以override這種行爲)

1

是啊,這是一個停用詞:

Fulltext stopwords

如果你有機會到MySQL服務器,你可以改變停止字的文件中描述here。如果它是一個共享服務器,那麼你可能會失敗。