1DROP TABLE IF EXISTS t1, t2;
2CREATE TABLE t1 (
3id mediumint unsigned NOT NULL auto_increment,
4tag char(6) NOT NULL default '',
5value text NOT NULL default '',
6PRIMARY KEY (id),
7KEY kt(tag),
8KEY kv(value(15)),
9FULLTEXT KEY kvf(value)
10) ENGINE = InnoDB;
11CREATE TABLE t2 (
12id_t2 mediumint unsigned NOT NULL default '0',
13id_t1 mediumint unsigned NOT NULL default '0',
14field_number tinyint unsigned NOT NULL default '0',
15PRIMARY KEY (id_t2,id_t1,field_number),
16KEY id_t1(id_t1)
17) ENGINE = InnoDB;
18INSERT INTO t1 (tag,value) VALUES ('foo123','bar111');
19INSERT INTO t1 (tag,value) VALUES ('foo123','bar222');
20INSERT INTO t1 (tag,value) VALUES ('bar345','baz333 ar');
21INSERT INTO t2 VALUES (2231626,64280,0);
22INSERT INTO t2 VALUES (2231626,64281,0);
23INSERT INTO t2 VALUES (12346, 3, 1);
24SELECT * FROM t1;
25id	tag	value
261	foo123	bar111
272	foo123	bar222
283	bar345	baz333 ar
29SELECT * FROM t2;
30id_t2	id_t1	field_number
3112346	3	1
322231626	64280	0
332231626	64281	0
34SELECT DISTINCT t2.id_t2 FROM t2, t1
35WHERE MATCH (t1.value) AGAINST ('baz333') AND t1.id = t2.id_t1;
36id_t2
3712346
38SELECT DISTINCT t2.id_t2 FROM t2, t1
39WHERE MATCH (t1.value) AGAINST ('baz333' IN BOOLEAN MODE)
40AND t1.id = t2.id_t1;
41id_t2
4212346
43DROP TABLE t1, t2;
44