1
0
mirror of https://github.com/MariaDB/server.git synced 2025-05-10 02:01:19 +03:00
mariadb/mysql-test/t/fulltext.test
sasha@mysql.sashanet.com 01370b46ca mysql-test/t/fulltext.test
added a test case for a coredump bug.
2001-02-27 18:32:40 -07:00

66 lines
2.2 KiB
Plaintext

#
# Test of fulltext index
#
drop table if exists t1,t2;
CREATE TABLE t1 (a VARCHAR(200), b TEXT, FULLTEXT (a,b));
INSERT INTO t1 VALUES('MySQL has now support', 'for full-text search'),('Full-text indexes', 'are called collections'),('Only MyISAM tables','support collections'),('Function MATCH ... AGAINST()','is used to do a search'),('Full-text search in MySQL', 'implements vector space model');
select * from t1 where MATCH(a,b) AGAINST ("collections");
select * from t1 where MATCH(a,b) AGAINST ("indexes");
select * from t1 where MATCH(a,b) AGAINST ("indexes collections");
delete from t1 where a like "MySQL%";
drop table t1;
#
# Check bug reported by Matthias Urlichs
#
CREATE TABLE t1 (
id int(11),
ticket int(11),
KEY ti (id),
KEY tit (ticket)
)/*! type=MyISAM */;
INSERT INTO t1 VALUES (2,3),(1,2);
CREATE TABLE t2 (
ticket int(11),
inhalt text,
KEY tig (ticket),
fulltext index tix (inhalt(1)) /* this line modified by hand */
)/*! type=MyISAM */;
INSERT INTO t2 VALUES (1,'foo'),(2,'bar'),(3,'foobar');
select t1.id FROM t2 as ttxt,t1,t1 as ticket2 WHERE ticket2.id = ttxt.ticket AND t1.id = ticket2.ticket and match(ttxt.inhalt) against ('foobar');
# In the following query MySQL didn't use the fulltext index
select t1.id FROM t2 as ttxt,t1 INNER JOIN t1 as ticket2 ON ticket2.id = ttxt.ticket WHERE t1.id = ticket2.ticket and match(ttxt.inhalt) against ('foobar');
INSERT INTO t1 VALUES (3,3);
select t1.id FROM t2 as ttxt,t1 INNER JOIN t1 as ticket2 ON ticket2.id = ttxt.ticket WHERE t1.id = ticket2.ticket and match(ttxt.inhalt) against ('foobar');
# Check that we get 'fulltext' index in SHOW CREATE
show keys from t2;
show create table t2;
drop table t1,t2;
# check for bug reported by Stephan Skusa
drop table if exists fulltextTEST;
CREATE TABLE fulltextTEST (
field1 varchar(40) NOT NULL,
field2 varchar(20) NOT NULL,
field3 varchar(40) NOT NULL,
PRIMARY KEY (field1),
FULLTEXT idx_fulltext (field1, field2, field3)
);
INSERT INTO fulltextTEST VALUES ( 'test1', 'test1.1', 'test1.1.1');
INSERT INTO fulltextTEST VALUES ( 'test2', 'test2.1', 'test2.1.1');
select *
from fulltextTEST
where MATCH (field1,field2,field3) AGAINST (NULL);
drop table fulltextTEST;