我正在使用其他人建立的两个表(表A和表B)。我注意到,如果我使用自然语言在表A上使用LIKE运算符进行搜索,则会得到结果,但是当我在表B上使用LIKE时,则会得到0个结果。一件奇怪的事是,如果搜索查询有四个词,例如"SELECT COUNT(*) FROM Table_A WHERE title LIKE '%Effect of previous exposure%';"
请参见以下示例:
SELECT COUNT(*) FROM Table_A WHERE title LIKE '%Effect of previous exposure to malaria on diabetes type 1.%';
+----------+
| count(*) |
+----------+
| 1 |
+----------+
1 row in set (0.00 sec)
SELECT COUNT(*) FROM Table_B WHERE title LIKE '%Effect of previous exposure to malaria on diabetes type 1.%';
+----------+
| count(*) |
+----------+
| 0 |
+----------+
1 row in set (0.02 sec)
当我运行SHOW CREATE TABLE
语句时,我得到以下结果;
表A
ENGINE=InnoDB AUTO_INCREMENT=438 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
表B:
ENGINE=InnoDB AUTO_INCREMENT=41681 DEFAULT CHARSET=utf8
显然,表引擎之间存在差异。
两个表都在同一个数据库中。可能是什么错误?