I've searched carefully the online manual before I decide to write this,
however, there's always a change that I have missed something along the
way ...
Is there any problem in using FULLTEXT indexes with InnoDB tables?
Check this out:
(MySQL 3.23.43 compiled with CXXFLAGS=-DDONT_USE_DEFAULT_FIELDS and with
default-table-type=InnoDB)
mysql> CREATE Table Phrase (phrase_id INTEGER NOT NULL AUTO_INCREMENT,
phrase_data VARCHAR(255), FULLTEXT (phrase_data), PRIMARY KEY
(phrase_id));
Query OK, 0 rows affected (0.00 sec)
mysql> INSERT INTO Phrase (phrase_data) VALUES ('mysql is the
greatest');
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO Phrase (phrase_data) VALUES ('but fulltext searches
seem to have a problem');
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO Phrase (phrase_data) VALUES ('hope this example helps
us to understand what\'s wrong');
Query OK, 1 row affected (0.00 sec)
mysql> SELECT MATCH (phrase_data) AGAINST ('mysql') FROM Phrase;
+---------------------------------------+
| MATCH (phrase_data) AGAINST ('mysql') |
+---------------------------------------+
| NULL |
| NULL |
| NULL |
+---------------------------------------+
3 rows in set (0.00 sec)
mysql> SELECT MATCH (phrase_data) AGAINST ('understand') FROM Phrase;
+--------------------------------------------+
| MATCH (phrase_data) AGAINST ('understand') |
+--------------------------------------------+
| NULL |
| NULL |
| NULL |
+--------------------------------------------+
3 rows in set (0.00 sec)
Now with a 3.23.41 (fresh install - Mandrake 8.1 RPM):
mysql> CREATE Table Phrase (phrase_id INTEGER NOT NULL AUTO_INCREMENT,
phrase_data VARCHAR(255), FULLTEXT (phrase_data), PRIMARY KEY
(phrase_id));
Query OK, 0 rows affected (0.08 sec)
mysql> INSERT INTO Phrase (phrase_data) VALUES ('mysql is the
greatest');
Query OK, 1 row affected (0.01 sec)
mysql> INSERT INTO Phrase (phrase_data) VALUES ('but fulltext searches
seem to have a problem');
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO Phrase (phrase_data) VALUES ('hope this example helps
us to understand what\'s wrong');
Query OK, 1 row affected (0.02 sec)
mysql> SELECT MATCH (phrase_data) AGAINST ('mysql') FROM Phrase;
+---------------------------------------+
| MATCH (phrase_data) AGAINST ('mysql') |
+---------------------------------------+
| 0.67756324121582 |
| 0 |
| 0 |
+---------------------------------------+
3 rows in set (0.00 sec)
mysql> SELECT MATCH (phrase_data) AGAINST ('understand') FROM Phrase;
+--------------------------------------------+
| MATCH (phrase_data) AGAINST ('understand') |
+--------------------------------------------+
| 0 |
| 0 |
| 0.66266459031789 |
+--------------------------------------------+
3 rows in set (0.00 sec)
Can anyone tell me what's wrong with the first one?
Thanks in advance
Pedro
---------------------------------------------------------------------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)
To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php