【发布时间】:2011-08-16 04:01:07
【问题描述】:
SELECT *
FROM Posts
WHERE MATCH (Posts.City) AGAINST ('Lujan')
显示 29 行。但是:
SELECT Users.*, Posts.*
FROM Users
INNER JOIN Posts ON Users.User = Posts.User
WHERE MATCH (Posts.City) AGAINST ('Lujan')
得到了零个结果,而我应该得到完全相同的结果。
向回显的查询添加解释:
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE Posts fulltext city_comparator,user_comparator city_comparator 0 1 Using where
1 SIMPLE Users eq_ref user_unique,user_comparator user_unique 62 chusmix.Posts.User 1
我不知道这意味着什么,而且在表用户中,全文索引“user_comparator”的基数为 0。虽然我已经注册了 10 多个用户。我还有一个用于列 Users.User 的唯一索引和一个用于 Users.ID 的主索引。
我更改了一些内容,所有使用 INNER JOIN 的查询都停止工作。我能做些什么来解决这个问题?谢谢
【问题讨论】:
-
卢汉好像没有用户和帖子