sql 合并查询结果
在使用js报表工具的时候,常常需要提供json数据进行显示,
在sql查询的时候就需要构造合适的查询结果出来;
就用到了合并两个没有关联关系的表数据,
SELECT
SUM(a1.amount) AS amount,
a1.date
FROM
((SELECT
SUM(amount) AS amount,
DATE_FORMAT(time,'%Y-%m-%d') AS date
FROM a
GROUP BY date)
UNION ALL
(SELECT -SUM(b.VALUE) AS s2,
DATE_FORMAT(b.time,'%Y-%m-%d') AS d2
FROM
b
GROUP BY d2)) AS a1
GROUP BY a1.date
//a表收款,b表付款,计算每天的收益(收款-付款)
//根据日期(天)分组,对两个表中的金额进行计算
//注意时间字段名称,a表相同位置的字段会覆盖b表字段名称,所以使用union要求两个表有相同的字段
//最后根据合并后时间进行分组,计算收益(计算差)
使用union 或union all
如select * from a union all select * from b 竖排合并两个表的数据
显示格式如:
a date
-204 2015-07-06
220 2015-07-15
-60 2015-07-16
220 2015-07-17
//另外一种情况,根据不同条件得到的值赋予不一样的别名(在不同的列显示)
SELECT
a.date,
sum(a.c1) AS s1,
SUM(a.c2) AS s2
FROM(
SELECT
DATE_FORMAT(b.time, '%Y-%m-%d') AS date,
IFNULL((
CASE b.sta
WHEN 0 THEN COUNT(*) END),0
) AS c1,
IFNULL((
CASE b.sta
WHEN 1 THEN COUNT(*) END),0
) AS c2
FROM b
GROUP BY b.sta,date
) AS a
GROUP BY a.date
//根据类型sta=0/=1,时间分组,统计个数
得到的数据格式:
date s1 s2
2015-07-06 4 1
2015-07-08 0 1
2015-07-15 0 1
2015-07-16 1 3
sql 合并查询结果的更多相关文章
- for xml path以及sql合并查询
sql中for xml path的用法. http://www.cnblogs.com/yanghaibo/archive/2010/06/04/1751405.html
- mysql两条sql合并查询总数
select IFNULL(c.nodeCount,0) + IFNULL(c.phyCount,0) as totalCount from ( select count(*) nodeCount, ...
- oracle 基础SQL语句 多表查询 子查询 分页查询 合并查询 分组查询 group by having order by
select语句学习 . 创建表 create table user(user varchar2(20), id int); . 查看执行某条命令花费的时间 set timing on: . 查看表的 ...
- SQL多表合并查询结果
两表合并查询,并同时展示及分页SELECT a.* FROM ( ( SELECT punycode, `domain`, 'Success' AS state, add_time, AS refun ...
- SQL SERVER连接、合并查询
----创建测试表MyStudentInfoCREATE table MyStudentInfo( Id int not null primary key, Name varchar(16), ...
- sql 内连接 子查询 合并查询
-- 内连接:-- 显示员工姓名.工资和公司所在地 select e.ename, e.sal, d.dname from emp e,dept d; -- 笛卡尔积 select e.ename, ...
- 学习SQL关联查询
通过一个小问题来学习SQL关联查询 原话题: 是关于一个left join的,没有技术难度,但不想清楚不一定能回答出正确答案来: TabA表有三个字段Id,Col1,Col2 且里面有一条数据1,1, ...
- oracle的多表合并查询-工作心得
本随笔文章,由个人博客(鸟不拉屎)转移至博客园 发布时间: 2018 年 11 月 29 日 原地址:https://niaobulashi.com/archives/oracle-select-al ...
- SQL中查询语句的使用
常用SQL查询语句 - myLittleGarden - 博客园 http://www.cnblogs.com/sunada2005/p/3411873.html 一.简单查询语句 1. 查看表结构 ...
随机推荐
- python 发送json数据操作实例分析 - python
文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 本文实例讲述了python 发送json数据操作.分享给大家供大家参考,具体如下: # !/usr/bin/env py ...
- C++的命名空间
作用:防止类,函数,变量等之间重名,比如在代码合并的时候 假如两个头文件中均定义了类Cal,而调用程序同时包含了两个头文件,当在定义Cal c时,程序会报类型重定义的错误.这种问题可以通过命名空间来解 ...
- JSON和fastjson
一.JSON 语法规则: 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 名称/值对-->对象-->数组 JSON 名称/值对 JSON 数据的书写格式是:名称/值对. ...
- youlexuan父类配置
<!-- 集中定义依赖版本号 --> <properties> <junit.version>4.12</junit.version> ...
- hdu 5860 Death Sequence(递推+脑洞)
Problem Description You may heard of the Joseph Problem, the story comes from a Jewish historian liv ...
- Service系统服务(二):补充应用技巧、软连接与硬连接、man手册、zip备份、vim效率操作、自定义yum软件仓库、发布及测试yum仓库、编译安装软件包
一.补充应用技巧 目标: 本例要求掌握在运维中比较常用的一些扩展命令技巧的使用,完成下列小技巧操作: 1> 采用数值形式将目录/root的权限调整为 rwx------ 2> 将记录的 ...
- delphi 监控文件系统
elphi 监控文件系统 你是否想为你的Windows加上一双眼睛,察看使用者在机器上所做的各种操作(例如建立.删除文件:改变文件或目录名字)呢? 这里介绍一种利用Windows未公开函数实现这个功能 ...
- 72、salesforce call RESTful 的方式
通过Chrome的Postman 来call salesforce的restful api https://login.salesforce.com/services/oauth2/token?gra ...
- 使用js在页面上新建文件夹
使用js在页面上新建文件夹 <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...
- Example of dynamic programmatic description
- Suppose there are some itineraries in the Itinerary page, and you want to check on all of them. Se ...