我有一张表,保存我的付款记录。它有用户ID字段......所以当我查询这个领域没有指数则返回4个值是这样的...quering mysql有和没有索引返回完全不同的结果
select count(id) from `mydb`.`sale_transaction` where subscriber_guid='4d03a32c-3dca-472b-a1db-0dfb0f66e64d';
+-----------+
| count(id) |
+-----------+
| 4 |
+-----------+
1 row in set (0.31 sec)
所以我想通过这个领域更快地获取数据,我说像这样的指数...
alter table sale_transaction add index subscriber_guid_index(subscriber_guid);
Query OK, 0 rows affected (1.00 sec)
Records: 0 Duplicates: 0 Warnings: 0
然后再次相同的查询......
select count(id) from `mydb`.`sale_transaction` where subscriber_guid='4d03a32c-3dca-472b-a1db-0dfb0f66e64d';
+-----------+
| count(id) |
+-----------+
| 0 |
+-----------+
1 row in set (0.00 sec)
如果我删除索引,它再次工作......
alter table sale_transaction drop index subscriber_guid_index;
Query OK, 0 rows affected (0.06 sec)
Records: 0 Duplicates: 0 Warnings: 0
select count(id) from `mydb`.`sale_transaction` where subscriber_guid='4d03a32c-3dca-472b-a1db-0dfb0f66e64d';
+-----------+
| count(id) |
+-----------+
| 4 |
+-----------+
1 row in set (0.29 sec)
以前没有见过这样的事情,我的错误是什么?
ft_min_word_len仅用于'FULLTEXT'列,但我们不知道'subscriber_guid_index'类型是什么。 –
它是字符(36),但我并没有全文索引。 – tanaydin