明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

MySQL全文本搜索:?jiǎn)⒂萌谋舅阉髦С?/h1>

[摘要]一般在創(chuàng)建表時(shí)啟用全文本搜索。 CREATE TABLE 語(yǔ)句接受 FULLTEXT 子句,它給出被索引列的一個(gè)逗號(hào)分隔的列表。下面的 CREATE 語(yǔ)句演示了 FULLTEXT 子句的使用:輸入:create table productnotes(note_id int ...
一般在創(chuàng)建表時(shí)啟用全文本搜索。 CREATE TABLE 語(yǔ)句接受 FULLTEXT 子句,它給出被索引列的一個(gè)逗號(hào)分隔的列表。

下面的 CREATE 語(yǔ)句演示了 FULLTEXT 子句的使用:

輸入:

create table productnotes
(
note_id      int                    NOT NULL AUTO_INCREMENT,
prod_id      char(10)               NOT NULL,
note_date  datetime                 NOT NULL,
note_text   text                    NULL,
primary key(note_id),
FULLTEXT(note_text)
)ENGINE = MyISAM;

分析:這些列中有一個(gè)名為 note_text 的列,為了進(jìn)行全文本搜索,MySQL根據(jù)子句 FULLTEXT(note_text) 的指示對(duì)它進(jìn)行索引。這里的FULLTEXT 索引單個(gè)列,如果需要也可以指定多個(gè)列。

在定義之后,MySQL自動(dòng)維護(hù)該索引。在增加、更新或刪除行時(shí),索引隨之自動(dòng)更新。

可以在創(chuàng)建表時(shí)指定 FULLTEXT ,或者在稍后指定(在這種情況下所有已有數(shù)據(jù)必須立即索引)。

不要在導(dǎo)入數(shù)據(jù)時(shí)使用 FULLTEXT 更新索引要花時(shí)間,雖然不是很多,但畢竟要花時(shí)間。如果正在導(dǎo)入數(shù)據(jù)到一個(gè)新表,此時(shí)不應(yīng)該啟用 FULLTEXT 索引。應(yīng)該首先導(dǎo)入所有數(shù)據(jù),然后再修改表,定義 FULLTEXT 。這樣有助于更快地導(dǎo)入數(shù)據(jù)(而且使索引數(shù)據(jù)的總時(shí)間小于在導(dǎo)入每行時(shí)分別進(jìn)行索引所需的總時(shí)間)。

以上就是MySQL全文本搜索:?jiǎn)⒂萌谋舅阉髦С值脑敿?xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!


學(xué)習(xí)教程快速掌握從入門到精通的SQL知識(shí)。