blob: 5b379d08e3aeee177fd528868cfeceffd45bbdbb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
DROP TABLE IF EXISTS logs;
CREATE TABLE logs (
id INT PRIMARY KEY,
record JSON
) ENGINE=Mroonga DEFAULT CHARSET=utf8mb4 COMMENT = 'ENGINE "InnoDB"';
INSERT INTO logs(id, record) VALUES (1, '{"level": "info", "message": "start"}');
ALTER TABLE logs ADD COLUMN message VARCHAR(255) GENERATED ALWAYS AS (json_extract(`record`, '$.message')) STORED;
ALTER TABLE logs ADD FULLTEXT INDEX(message) comment 'tokenizer "TokenBigramSplitSymbolAlphaDigit"';
INSERT INTO logs(id, record) VALUES (2, '{"level": "info", "message": "restart"}');
INSERT INTO logs(id, record) VALUES (3, '{"level": "warn", "message": "abort"}');
SELECT * FROM logs WHERE MATCH(message) AGAINST("ar" IN BOOLEAN MODE);
id record message
1 {"level": "info", "message": "start"} "start"
2 {"level": "info", "message": "restart"} "restart"
DROP TABLE logs;
|