1、新建數(shù)據(jù)表:CREATE TABLE fulltext_sample(copy TEXT,FULLTEXT(copy)) TYPE=MyISAM;這里的copy就是一個(gè)fulltext類(lèi)型的字段,如果建表的時(shí)候沒(méi)有添加全文檢索字段,也可以通過(guò)alert來(lái)添加,如:ALTER TABLE fulltext_sample ADD FULLTEXT(copy)
鐵東ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書(shū)未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)建站的ssl證書(shū)銷(xiāo)售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話(huà)聯(lián)系或者加微信:028-86922220(備注:SSL證書(shū)合作)期待與您的合作!
2、插入數(shù)據(jù):INSERT INTO fulltext_sample VALUES('It appears good from here'),('The here and the past'),('Why are we hear'),('An all-out alert'),('All you need is love'),('A good alert');
3、數(shù)據(jù)檢索:SELECT * FROM fulltext_sample WHERE MATCH(copy) AGAINST('love');上面就是mysql的全文檢索功能,注意:在全文索引上進(jìn)行搜索是不區(qū)分大小寫(xiě)的。下面再看如何實(shí)現(xiàn)中文全文檢索。fulltext字段是以詞語(yǔ)為單位,詞語(yǔ)之間需要用空格隔開(kāi),而漢語(yǔ)的句子中各個(gè)詞語(yǔ)之間并不會(huì)用空格隔開(kāi),因此我們需要對(duì)中文進(jìn)行分詞,這也就是為什么上面需要強(qiáng)詞用到中文分詞擴(kuò)展模塊。但是盡管對(duì)中文進(jìn)行分詞,MYSQL還是不能通過(guò)MATCH來(lái)實(shí)現(xiàn)中文的全文檢索,這需要通過(guò)一定的方法來(lái)進(jìn)行轉(zhuǎn)換,一個(gè)比較簡(jiǎn)單實(shí)用的方法是采用下面這個(gè)函數(shù)(當(dāng)然還有更好的),它將中文進(jìn)行了urlencode轉(zhuǎn)換。function q_encode($str){$data = array_filter(explode(" ",$str));$data = array_flip(array_flip($data));foreach ($data as $ss) {if (strlen($ss)1 )$data_code .= str_replace("%","",urlencode($ss)) . " ";}$data_code = trim($data_code);return $data_code;}將轉(zhuǎn)換過(guò)后的內(nèi)容保存至事先定義好的fulltext字段。同樣,在查詢(xún)的時(shí)候也需要將查詢(xún)的關(guān)鍵詞進(jìn)行同樣方法的轉(zhuǎn)換。
使用sphinx,中文版的有coreseek,挺好用的,手冊(cè)也全,HP的用這個(gè)的比較多,但不知道它支持中文不~是不是要進(jìn)行中文檢索就得用coreseek和sphinx-for-chinese這樣的中文版本。
多個(gè)條件的SQL語(yǔ)句,條件之間使用AND、OR鏈接起來(lái)就可以了,例如:
SELECT * FROM 表表 WHERE 姓名='XXX' AND 年齡=99 AND 性別='不男不女'
目前好像只有指定定表來(lái)查詢(xún),你可以寫(xiě)個(gè)函數(shù)。。封裝一下
數(shù)據(jù)庫(kù)1
select * from 表1
select * from 表2
select * from 表3
……
數(shù)據(jù)庫(kù)2
select * from 表1
select * from 表2
select * from 表3
……
然后把多個(gè)結(jié)果集獲取出來(lái)。。
這是個(gè)思路。。具體你也可以把*改成你要搜索的字段。。
如果不想這么麻煩。。還想要簡(jiǎn)單一點(diǎn)的話(huà)。。我還有一個(gè)辦法。。
那就是把整個(gè)數(shù)據(jù)庫(kù)導(dǎo)出成一個(gè).sql或者txt文件。。然后直接用記事本就可以搜索到整個(gè)數(shù)據(jù)庫(kù)中有相應(yīng)值的地方。。。然后搜索相應(yīng)的表就可以了。。
嗯,你要更高級(jí)一點(diǎn)可以寫(xiě)個(gè)腳本讓數(shù)據(jù)庫(kù)定時(shí)備份下來(lái)。。然后搜索的時(shí)候直接去搜索這個(gè)備份的文件。
新聞標(biāo)題:數(shù)據(jù)庫(kù)全文檢索php,數(shù)據(jù)庫(kù)全文搜索
網(wǎng)站路徑:http://chinadenli.net/article44/hecohe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、網(wǎng)站導(dǎo)航、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站排名、ChatGPT、網(wǎng)站內(nèi)鏈
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)