基于mysql全文索引的深入理解_MySQL
bitsCN.com
前言:本文简单讲述全文索引的应用实例,MYSQL演示版本5.5.24。
Q:全文索引适用于什么场合?
A:全文索引是目前实现大数据搜索的关键技术。
至于更详细的介绍请自行百度,本文不再阐述。
--------------------------------------------------------------------------------
一、如何设置?
如图点击结尾处的{全文搜索}即可设置全文索引,不同MYSQL版本名字可能不同。
二、设置条件
1.表的存储引擎是MyISAM,默认存储引擎InnoDB不支持全文索引(新版本MYSQL5.6的InnoDB支持全文索引)
2.字段类型:char、varchar和text
三、配置
my.ini配置文件中添加
# MySQL全文索引查询关键词最小长度限制
[mysqld]
ft_min_word_len = 1
保存后重启MYSQL,执行SQL语句
SHOW VARIABLES
查看ft_min_word_len是否设置成功,如果没设置成功请确保
1.确认my.ini正确配置,注意不要搞错my.ini的位置
2.确认mysql已经重启,实在不行重启电脑
其他相关配置请自行百度。
注:重新设置配置后,已经设置的索引需要重新设置生成索引
四、SQL语法
首先生成temp表
CREATE TABLE IF NOT EXISTS `temp` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`char` char(50) NOT NULL,
`varchar` varchar(50) NOT NULL,
`text` text NOT NULL,
PRIMARY KEY (`id`),
FULLTEXT KEY `char` (`char`),
FULLTEXT KEY `varchar` (`varchar`),
FULLTEXT KEY `text` (`text`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;
INSERT INTO `temp` (`id`, `char`, `varchar`, `text`) VALUES
(1, 'a bc 我 知道 1 23', 'a bc 我 知道 1 23', 'a bc 我 知道 1 23');
搜索`char`字段 'a' 值
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('a')
但是你会发现查询无结果?!
这时你也许会想:哎呀怎么回事,我明明按照步骤来做的啊,是不是那里漏了或者错了?
你不要着急,做程序是这样的,出错总是有的,静下心来,着急是不能解决问题的。
如果一个关键词在50%的数据出现,那么这个词会被当做无效词。
如果你想去除50%的现在请使用IN BOOLEAN MODE搜索
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('a' IN BOOLEAN MODE)
这样就可以查询出结果了,但是我们不推荐使用。
全文索引的搜索模式的介绍自行百度。
我们先加入几条无用数据已解除50%限制
INSERT INTO `temp` (
`id` ,
`char` ,
`varchar` ,
`text`
)
VALUES (
NULL , '7', '7', '7'
), (
NULL , '7', '7', '7'
), (
NULL , 'a,bc,我,知道,1,23', 'a,bc,我,知道,1,23', 'a,bc,我,知道,1,23'
), (
NULL , 'x', 'x', 'x'
);
这时你执行以下SQL语句都可以查询到数据
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('a');
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('bc');
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('我');
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('知道');
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('1');
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('23');
以下SQL搜索不到数据
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('b');
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('c');
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('知');
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('道');
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('2');
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('3');
如果搜索多个词,请用空格或者逗号隔开
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('a x');
SELECT * FROM `temp` WHERE MATCH(`char`) AGAINST ('a,x');
上面的SQL都可以查询到三条数据
五、分词
看到这里你应该发现我们字段里的值也是分词,不能直接插入原始数据。
全文索引应用流程:
1.接收数据-数据分词-入库
2.接收数据-数据分词-查询
现在有个重要的问题:怎么对数据分词?
数据分词一般我们会使用一些成熟免费的分词系统,当然如果你有能力也可以自己做分词系统,这里我们推荐使用SCWS分词插件。
首先下载
1.php_scws.dll 注意对应版本
2.XDB词典文件
3.规则集文件
下载地址
安装scws
1.先建一个文件夹,位置不限,但是最好不要中文路径。
2.解压{规则集文件},把xdb、三个INI文件全部扔到 D:/scws
3.把php_scws.dll复制到你的PHP目录下的EXT文件夹里面
4.在 php.ini 的末尾加入以下几行:
[scws]
; 注意请检查 php.ini 中的 extension_dir 的设定值是否正确, 否则请将 extension_dir 设为空,
; 再把 php_scws.dll 指定为绝对路径。
extension = php_scws.dll
scws.default.charset = utf8
scws.default.fpath = "D:/scws"
5.重启你的服务器
测试
$str="测试中文分词";
$so = scws_new();
$so->send_text($str);
$temp=$so->get_result();
$so->close();
var_dump($temp);
如果安装未成功,请参照官方说明文档
--------------------------------------------------------------------------------
这样我们就可以使用全文索引技术了。

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Deepseek est un puissant outil de recherche et d'analyse intelligent qui fournit deux méthodes d'accès: la version Web et le site officiel. La version Web est pratique et efficace et peut être utilisée sans installation; Que ce soit des individus ou des utilisateurs d'entreprise, ils peuvent facilement obtenir et analyser des données massives via Deepseek pour améliorer l'efficacité du travail, aider la prise de décision et promouvoir l'innovation.

L'un des changements majeurs introduits dans MySQL 8.4 (la dernière version LTS en 2024) est que le plugin « MySQL Native Password » n'est plus activé par défaut. De plus, MySQL 9.0 supprime complètement ce plugin. Ce changement affecte PHP et d'autres applications

Cet article présente six outils d'IA populaires, notamment Douyin Doubao, Wenxin Yige, Tencent Zhiying, Baidu Feipiao EasyDL, Baidu AI Studio et iFlytek Spark Cognitive Large Model. Ces outils couvrent différentes fonctions telles que la création de texte, la génération d'images, le montage vidéo et le développement de modèles d'IA. Choisir le bon outil d’IA nécessite de prendre en compte des facteurs tels que les exigences fonctionnelles, le niveau technique et le budget. Ces outils offrent des solutions pratiques et efficaces aux particuliers et aux entreprises ayant besoin de l’assistance de l’IA.

Deepseek-R1 autorise la bibliothèque Baidu et NetDisk: L'intégration parfaite de la pensée et de l'action profondes s'est rapidement intégrée à de nombreuses plateformes en seulement un mois. Avec sa disposition stratégique audacieuse, Baidu intègre Deepseek en tant que partenaire modèle tiers et l'intégre dans son écosystème, qui marque un progrès majeur dans sa stratégie écologique de "Big Model Search". Baidu Search et Wenxin Intelligent Intelligent Platform sont les premiers à se connecter aux fonctions de recherche profonde des grands modèles Deepseek et Wenxin, offrant aux utilisateurs une expérience de recherche IA gratuite. Dans le même temps, le slogan classique de "Vous saurez quand vous allez à Baidu", et la nouvelle version de l'application Baidu intègre également les capacités du Big Model et Deepseek de Wenxin, lançant "AI Search" et "Wide Network Information Raffinement"

Les outils d'IA incluent : Doubao, ChatGPT, Gemini, BlenderBot, etc.

GATE.IO (Sesame Open Door) Exchange n'a pas d'URL fixe, et ses méthodes d'accès varient selon la région et l'itinéraire.

En tant que la principale plateforme de trading d'actifs numériques au monde, OUYI OKX attire de nombreux investisseurs avec ses riches produits de trading, ses fortes garanties de sécurité et sa expérience utilisateur pratique. Cependant, les risques de sécurité des réseaux deviennent de plus en plus graves et comment enregistrer en toute sécurité le compte officiel OUYI OKX est crucial. Cet article fournira le dernier portail d'enregistrement pour le site officiel OUYI OKX et expliquera en détail les étapes et les précautions pour une inscription sûre, y compris comment identifier le site officiel, définir un mot de passe solide, permettre la vérification à deux facteurs, etc., pour vous aider à démarrer votre voyage d'investissement dans les actifs numériques en toute sécurité. Veuillez noter qu'il existe des risques dans l'investissement des actifs numériques, veuillez prendre des décisions prudentes.

Avec la popularité croissante du trading des crypto-monnaies, il est crucial de choisir une plate-forme de trading sûre et fiable. En tant que la principale plate-forme de trading d'actifs numériques au monde, OUYI OKX est très favorisé pour ses produits de trading riches, riches, une bonne liquidité et une expérience utilisateur. Cependant, Internet regorge de fausses informations et de nombreux utilisateurs ont du mal à identifier le site officiel d'Ouyi OKX. Cet article vous guidera comment accéder en toute sécurité et rapidement à la plate-forme officielle OUYI OKX, éviter de saisir accidentellement des sites Web de phishing et d'assurer la sécurité de vos actifs numériques. Nous présenterons diverses méthodes telles que les moteurs de recherche, les sites Web tiers, les médias sociaux officiels et les applications officielles pour trouver des liens de portail officiels et fournir des conseils de sécurité importants pour vous aider à effectuer des transactions de crypto-monnaie sûres et fiables sur la plate-forme OKI OKX.
