Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 合并两个不同的查询_Mysql - Fatal编程技术网

Mysql 合并两个不同的查询

Mysql 合并两个不同的查询,mysql,Mysql,大家好,我有两个不同的问题: SELECT ROUND(x, -1) AS range, COUNT(*) FROM tbl_name GROUP BY range; 及 两个查询都返回两列,如下所示: 0 | 22 我想结合这两个查询,返回3个冒号,如下所示 0 | 22 | 20如果只有一行,那么解决方案很简单。只需使用连接。比如: select q1.range, q1.cnt, q2.cnt from (<query1>) q1 join (<que

大家好,我有两个不同的问题:

SELECT ROUND(x, -1)    AS range,
COUNT(*)    
FROM  tbl_name
GROUP  BY range;

两个查询都返回两列,如下所示: 0 | 22

我想结合这两个查询,返回3个冒号,如下所示
0 | 22 | 20

如果只有一行,那么解决方案很简单。只需使用
连接
。比如:

select q1.range, q1.cnt, q2.cnt
from (<query1>) q1 join (<query2>) q2 on q1.range = q2.range;
select q1.range, q1.cnt, q2.cnt
from (<query1>) q1 join (<query2>) q2 on q1.range = q2.range;
select range, sum(xcnt), sum(ycnt)
from ((SELECT ROUND(x, -1) AS range, COUNT(*) as xcnt, 0 as ycnt
       FROM  tbl_name
       GROUP BY range
      ) union all
      (SELECT ROUND(y, -1) AS range, 0, COUNT(*)    
       FROM   tbl_name
       GROUP  BY range
      )
     ) t
group by range;