如何查询关联表中满足特定条件的两组数据?
你在学习相关的知识吗?本文,主要介绍的内容就涉及到,如果你想提升自己的开发能力,就不要错过这篇文章,大家要知道编程理论基础和实战操作都是不可或缺的哦!
如何解决 mysql 关联表查询问题?
设有表 a 和 b,表 a 的 outer_id 列连接表 b 的 id 列。现在需要查询表 a 的两组数据:
- 一组是表 a 的 outer_id 关联表 b 的 id,如果关联,type 列不能为 99;如果未关联,也需要这组数据。
- 另一组是表 b 必须存在,并且 type 列等于 99。
以下是查询这两组数据的 sql 语句:
查询第一组数据
select a.* from a a left join b b on b.id = a.outer_id where b.id is null or (b.id is not null and b.type != 99)
查询第二组数据
SELECT a.* FROM A a INNER JOIN B b ON b.id = a.outer_id AND b.type = 99
今天带大家了解了的相关知识,希望对你有所帮助;关于数据库的技术知识我们会一点点深入介绍,欢迎大家关注主机宝贝公众号,一起学习编程~