table.a は innodb にフィールドがありますid,post_id,auther,add_date
table.b は myisam has fields post_id,title,content
、fulltext key(title,content) です
select * from b
where match (title,content)
against ('+words' in boolean mode)
これは 12 のレコードを返す可能性があります。説明を実行すると、全文キーが表示されました。しかし
select * from a
inner join b
on a.post_id = 'b.post_id'
where match (b.title,b.content)
against ('+words' in boolean mode)
and a.auther = 'someone'
order by a.id asc
この再実行 0 の結果。確認しました
select id,auther,post_id from a where auther = 'someone'
post_id
mysqlに入れられたリターン
select post_id from b where post_id = 'post_id from table a'
この結果は存在します。では、どこに問題があるのでしょうか。(ところで、2 つのテーブル post_id はすべて varchar として保存されます)