我在单个查询中在两个不同的表中使用FULLTEXT搜索。哪会产生错误的结果。
select c.*, s.s_name, s.logo, s.s_slug, cm.coupon_code, cm.c_shorturl, cm.c_shorturl_id
from ci_coupons c
left join ci_stores s on s.store_id = c.store_id
left join ci_coupons_mapper cm on cm.coupon_id = c.coupon_id
where c.c_link_type like "%Banner%"
and c.c_width='300'
and match(c.c_name) against('+trend +micro') or match(s.display_name) against('+trend +micro')
order by c.coupon_id desc
在上面的查询中,我在+trend +micro
和c.c_name
字段中搜索s.display_name
,但我希望c_link_type
的结果为Banner
。但我得到了这个结果
那个c_link_type
空白是错误的,那是因为FULLTEXT,有人能引导我走向正确的方向吗?
答案 0 :(得分:2)
我可以通过屏幕截图中提供的数据看到最好的猜测,你遗漏了一些问题:
and (match(c.c_name) against('+trend +micro') or match(s.display_name) against('+trend +micro'))
我敢打赌你的s.display_name栏中有“趋势科技”。