DROP TABLE IF EXISTS diaries;
SET NAMES utf8mb4;
CREATE TABLE diaries (
id INT PRIMARY KEY,
title VARCHAR(255),
category VARCHAR(10),
content TEXT,
FULLTEXT INDEX (title, category, content)
) DEFAULT CHARSET=utf8mb4;
INSERT INTO diaries VALUES(1, "Hello", "日記", "今日からはじめました。");
INSERT INTO diaries VALUES(2, "天気予報",  "天気", "明日の富士山の天気について");
INSERT INTO diaries VALUES(3, "富士山", "天気", "今日も天気がよくてきれいに見える。");
SELECT *, MATCH(title, category, content)
AGAINST("*W1:2,2:10,3:1 +天気" in BOOLEAN MODE) AS score
FROM diaries
WHERE MATCH(title, category, content)
AGAINST("*W1:2,2:10,3:1 +天気" in BOOLEAN MODE);
id	title	category	content	score
2	天気予報	天気	明日の富士山の天気について	13
3	富士山	天気	今日も天気がよくてきれいに見える。	11
DROP TABLE diaries;
