大尾巴 2019-01-04 11:05 采纳率: 0%
浏览 3521
已采纳

mysql进行left join左关联查询的时候,关联条件被自动模糊匹配了

如下图:

图片说明

a表中总共有5条数据,b表中与之完全匹配关联的字段也只有5条。但是进行a left join b关联查询的时候,最终结果显示6条数据。数据差异是“207”的这条数据关联出2条来,但是第二条数据并不是207,而且“207ea6c8156749f19588996ee8699b55”。
这种感觉就像是使用了模糊查询,但是我的语句中使用的是“=”等于号。

不知道各位MySQL大神有没有遇到过这种情况,或者知道为什么会出现这种情况的。

请不吝赐教。

  • 写回答

1条回答 默认 最新

  • 大尾巴 2019-01-04 11:15
    关注

    已经找到答案了,是因为数据类型的原因。
    a.MAIL_CONTENT_MODULE_ID是int类型,而b.down_id是varchar类型。所以两个用等于号的时候会出现问题。
    解决方法就是将int类型转为varchar。
    深层次原因暂未探究,如有知道的大神,烦请告知。
    谢谢。
    图片说明

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部