精诚_成哥 2021-01-10 19:24 采纳率: 100%
浏览 381
已采纳

mysql 俩表联合查询并排除指定数据

表A  
id name
1  4567
2  6548
3  8524
表B
id name
1 4567

如上表.我想在表A中取出不包含表B'name'的数据 且 排除表A'6548'的数据,取出8524 

select * from A,B where instr(A.name,B.name) = 0;  该语句只能联合排除表B的4567  但是无法排除指定数据6548(该数据在变量.不在表B)
select * from A,B where not regexp '^6548$';  该语句只能排除指定数据6548 但和上个语句结合 就不能使用,.我想一个语句 联合查询出来.
感激不尽

 

​​​​​​​

  • 写回答

2条回答 默认 最新

  • fye700 2021-01-10 19:49
    关注

    select name from A where name !='6548' and name not in (select name from B where id ='1');

    或者:

    select name from A where name not in ('6548',(select name from B where id='1'));

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥50 易语言把MYSQL数据库中的数据添加至组合框
  • ¥20 求数据集和代码#有偿答复
  • ¥15 关于下拉菜单选项关联的问题
  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况