一个两表联合查询
user_list表
1 | CREATE TABLE `user_list` ( |
user_tag表
1 | CREATE TABLE `user_tag` ( |
解决方法
方法一
1 | select a.* from user_list as a where a.id not in( select b.user_id from user_tag as b where b.tag_id = 101) |
方法二
1 | SELECT a.id, a.name FROM user_list a |
方法三
1 | SELECT * FROM user_list a WHERE NOT EXISTS(SELECT 1 FROM user_tag b WHERE a.id=b.user_id AND b.tag_id='101') |
使用explain分析,方法三的效率是最高的。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 螃蟹壳!