冨田 昌宏
Tomit****@jp*****
2010年 11月 16日 (火) 20:03:49 JST
はじめまして、冨田と言います。
groongaストレージエンジンでおかしな挙動を発見しました。既に承知されてい
るかもしれませんが、一応報告します。
1. not match against が常に空を返す
以下、test/sql/t/fulltext.test の2番目のテーブルで試した結果です。
mysql> select * from t1;
+----+------+----------------+
| c1 | c2 | c3 |
+----+------+----------------+
| 1 | 10 | aa ii uu ee oo |
| 2 | 20 | ka ki ku ke ko |
| 3 | 30 | sa si su se so |
| 4 | 40 | ta ti tu te to |
| 5 | 50 | aa ii uu ee oo |
+----+------+----------------+
5 rows in set (0.00 sec)
mysql> select * from t1 where match(c3) against("su");
+----+------+----------------+
| c1 | c2 | c3 |
+----+------+----------------+
| 3 | 30 | sa si su se so |
+----+------+----------------+
1 row in set (0.01 sec)
mysql> select * from t1 where not match(c3) against("su");
Empty set (0.00 sec)
2. 条件に一致しても最初の1行しか返さない
以下、test/sql/t/select_secondary_key.test の1番目のテーブルで試した結果です。
mysql> select * from t1 force index(idx1) where c2 = 30;
+----+------+----------------+
| c1 | c2 | c3 |
+----+------+----------------+
| 3 | 30 | sa si su se so |
+----+------+----------------+
1 row in set (0.00 sec)
mysql> insert into t1 values(6,30,"aa bb cc dd ee");
Query OK, 1 row affected (0.00 sec)
mysql> select * from t1;
+----+------+----------------+
| c1 | c2 | c3 |
+----+------+----------------+
| 1 | 10 | aa ii uu ee oo |
| 2 | 20 | ka ki ku ke ko |
| 3 | 30 | sa si su se so |
| 4 | 40 | ta ti tu te to |
| 5 | 50 | aa ii uu ee oo |
| 6 | 30 | aa bb cc dd ee |
+----+------+----------------+
6 rows in set (0.00 sec)
mysql> select * from t1 force index(idx1) where c2 = 30;
+----+------+----------------+
| c1 | c2 | c3 |
+----+------+----------------+
| 3 | 30 | sa si su se so |
+----+------+----------------+
1 row in set (0.00 sec)
--
富士通長野システムエンジニアリング
冨田昌宏 <Tomit****@jp*****>
Tel: 026-237-6991 (7571-3248)