教您如何实现MySQL全文查询

 2022-10-27    386  

MySQL全文查询的方法并不难,下面就为您详细介绍MySQL全文查询的实现方法,希望对您学习MySQL全文查询方面能够有所帮助。

到3.23.23时,MySQL开始支持全文索引和搜索。全文索引在MySQL中是一个FULLTEXT类型索引。FULLTEXT索引用于 MyISAM 表,可以在CREATE TABLE时或之后使用ALTER TABLE或 CREATE INDEX 在 CHAR、VARCHAR 或 TEXT 列上创建。对于大的数据库,将数据装载到一个没有FULLTEXT索引的表中,然后再使用 ALTER TABLE (或 CREATE INDEX) 创建索引,这将是非常快的。将数据装载到一个已经有FULLTEXT索引的表中,将是非常慢的。

教您如何实现MySQL全文查询

全文搜索通过 MATCH() 函数完成。

mysql>CREATETABLEarticles( 
->idINTUNSIGNEDAUTO_INCREMENTNOTNULLPRIMARYKEY, 
->titleVARCHAR(200), 
->bodyTEXT, 
->FULLTEXT(title,body) 
->); 
QueryOK,0rowsaffected(0.00sec) 

mysql>INSERTINTOarticlesVALUES 
->(NULL,\'MySQLTutorial\',\'DBMSstandsforDataBase...\'), 
->(NULL,\'HowToUseMySQLEfficiently\',\'Afteryouwentthrougha...\'), 
->(NULL,\'OptimisingMySQL\',\'Inthistutorialwewillshow...\'), 
->(NULL,\'1001MySQLTricks\',\'1.NeverrunMySQLdasroot.2....\'), 
->(NULL,\'MySQLvs.YourSQL\',\'Inthefollowingdatabasecomparison...\'), 
->(NULL,\'MySQLSecurity\',\'Whenconfiguredproperly,MySQL...\'); 
QueryOK,6rowsaffected(0.00sec) 
Records:6Duplicates:0Warnings:0 

mysql>SELECT*FROMarticles 
->WHEREMATCH(title,body)AGAINST(\'database\'); 
+----+-------------------+------------------------------------------+ 
|id|title|body| 
+----+-------------------+------------------------------------------+ 
|5|MySQLvs.YourSQL|Inthefollowingdatabasecomparison...| 
|1|MySQLTutorial|DBMSstandsforDataBase...| 
+----+-------------------+------------------------------------------+ 
2rowsinset 
 

  •  标签:  
  • MySQL
  •  

原文链接:https://77isp.com/post/4281.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。