DROP TABLE IF EXISTS diaries;
SET NAMES UTF8;
CREATE TABLE diaries (
id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
year INT UNSIGNED,
month INT UNSIGNED,
day INT UNSIGNED,
title VARCHAR(255),
content TEXT,
FULLTEXT INDEX(content),
KEY(day)
) DEFAULT CHARSET UTF8;
SHOW CREATE TABLE diaries;
Table	Create Table
diaries	CREATE TABLE `diaries` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `year` int(10) unsigned DEFAULT NULL,
  `month` int(10) unsigned DEFAULT NULL,
  `day` int(10) unsigned DEFAULT NULL,
  `title` varchar(255) DEFAULT NULL,
  `content` text,
  PRIMARY KEY (`id`),
  KEY `day` (`day`),
  FULLTEXT KEY `content` (`content`)
) ENGINE=mroonga DEFAULT CHARSET=utf8
INSERT INTO diaries VALUES(1, 2011, 11, 9, "Hello", "今日からはじめました。");
INSERT INTO diaries VALUES(2, 2011, 11, 10, "天気", "明日の富士山の天気について");
INSERT INTO diaries VALUES(3, 2011, 11, 11, "富士山", "今日も天気がよくてきれいに見える。");
INSERT INTO diaries VALUES(4, 2011, 11, 11, "帰り道", "今日は天気がよくてよかった。");
INSERT INTO diaries VALUES(5, 2011, 12, 1, "久しぶり", "天気が悪いからずっと留守番。");
INSERT INTO diaries VALUES(6, 2011, 12, 2, "初雪", "今日の天気は雪！");
SELECT SQL_CALC_FOUND_ROWS * FROM diaries WHERE MATCH(content) AGAINST("今日 天気" IN BOOLEAN MODE) ORDER BY day LIMIT 0,5;
id	year	month	day	title	content
5	2011	12	1	久しぶり	天気が悪いからずっと留守番。
6	2011	12	2	初雪	今日の天気は雪！
1	2011	11	9	Hello	今日からはじめました。
2	2011	11	10	天気	明日の富士山の天気について
3	2011	11	11	富士山	今日も天気がよくてきれいに見える。
SELECT FOUND_ROWS();
FOUND_ROWS()
6
DROP TABLE diaries;
