-- 创建一个使用 ngram 分词器的表
CREATE TABLE articles (
id INT AUTO_INCREMENT PRIMARY KEY,
title TEXT,
content TEXT
) ENGINE=InnoDB;
-- 创建一个使用 ngram 分词器的全文索引
ALTER TABLE articles
ADD FULLTEXT INDEX ft_index (title, content)
WITH PARSER ngram;
-- 插入一些示例数据
INSERT INTO articles (title, content) VALUES
('MySQL Ngram 示例', '这是关于 MySQL Ngram 的示例文章。'),
('Ngram 解释', 'Ngram 是一种用于分词的技术。');
-- 使用 MATCH ... AGAINST 进行搜索
SELECT * FROM articles
WHERE MATCH(title, content) AGAINST('示例' IN BOOLEAN MODE);
-- 解释说明:
-- 1. 创建了一个名为 `articles` 的表,包含 `id`, `title`, 和 `content` 字段。
-- 2. 使用 `ALTER TABLE` 语句为 `title` 和 `content` 字段创建了全文索引,并指定了 `ngram` 分词器。
-- 3. 插入了一些示例数据。
-- 4. 使用 `MATCH ... AGAINST` 语法进行全文搜索,其中 `IN BOOLEAN MODE` 表示使用布尔模式进行搜索。
下一篇:mysql取绝对值函数
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站