如何实现两个结构相同表的联合查询
bianhao leixing shuliang
11 1 3
11 2 4
11 3 6
12 3 2
13 2 2
13 3 3
表B 如下
bianhao leixing shuliang
11 1 2
11 2 4
11 3 6
13 3 1
=====================================
从 bianhao和leixing两个字段看,B表的数据是A表的子集,现在想实现联合查询,查询结果为如果A表中某记录的bianhao和leixing两个字段同B表中的相同,则shuliang为A.shuliang-B.shuliang,否则保留为A的shuliang显示出来
我用select A.bianhao,A.leixing,A.shuliang-B.shuliang from A,B where A.bianhao=B.bianhao(+) and A.leixing=B.leixing(+),[/color]查出来的结果是B中不存在但A中存在的记录的shuliang字段变成空了,要怎么才能查询啊
正确结果应该是
bianhao leixing shuliang
11 1 [color=#FF0000]1
11 2 0
11 3 0
12 3 2
13 2 2
13 3 2
相关推荐
解决Mysql数据库实现多表联合查询
大家在做项目时经常会遇到按照其中一个字段排序展示数据库中的信息问题,但是要展示的数据又在不同的表中。这种情况下要用到表之间的联合查询 例如:有一个表user_t 其中有user_name; user_age; add_time等字段字段; 另外一个student_t其中有student_name; student_age; add_time等字段 问题:如何按照时间顺序展示这两个表中的数据? 解决方法: select user_name as name, user_age as age ,add_time as time from user_t union
【一文看懂SQL系列】分页查询,联合查询 精辟总结
一、分页查询 应用场景:当要显示的数据,一页显示不全,需要分页提交SQL请求 语法: 执行顺序从1-9 SELECT 查询列表 7 FROM 表名 1 JOIN 表2 2 ON 连接条件 3 WHERE 筛选条件 4 GROUP BY 分组条件 5 HAVING 分组后筛选 6 ORDER BY 排序字段 8 LIMIT offset, size 9 注意: offset 为起始索引,默认从0开始 size 为条目个数 特殊: LIMIT (page-1)*size, size 分页,每页size
sql 多表 3表4联合查询
源码链接: https://pan.quark.cn/s/e62d0b9725ba 在涉及多个数据库表格的情况下,运用包含三个表并执行四次联接的查询语句,能够处理存在两组相同表格但需与不同表格应用不同约束条件的复杂查询场景。
小白终是踏上了这条不归路—-小文的mysql学习笔记(9)—-联合查询
** 小白终是踏上了这条不归路—-小文的mysql学习笔记(1) 小白终是踏上了这条不归路—-小文的mysql学习笔记(2)—-条件查询 小白终是踏上了这条不归路—-小文的mysql学习笔记(3)—-排序询查 小白终是踏上了这条不归路—-小文的mysql学习笔记(4)—-常见的基本函数 小白终是踏上了这条不归路—-小文的mysql学习笔记(5)—-分组查询 … … 小白终是踏上了这条不归路—-小文的mysql学习笔记(目录) ** Union 联合合并:可以将多条查询语句的查询结果合并成一-个结果。 语法: 查询语句1 union 查
25.3 MySQL 多表查询
配套资源


