在sql中组合查询结果

在sql中组合查询结果,sql,Sql,我正在使用SQL语言。我想合并查询的结果。 这是我的代码和预期输出 create table customer(name varchar,dpt varchar); insert into customer (name,dpt)VALUES ('albe','cse'); insert into customer (name,dpt)VALUES ('bine','cse'); insert into customer (name,dpt)VALUES ('alfred','ece'); i

我正在使用SQL语言。我想合并查询的结果。 这是我的代码和预期输出

 create table customer(name varchar,dpt varchar);

insert into customer (name,dpt)VALUES ('albe','cse');
insert into customer (name,dpt)VALUES ('bine','cse');
insert into customer (name,dpt)VALUES ('alfred','ece');
insert into customer (name,dpt)VALUES ('booshan','ece');
insert into customer (name,dpt)VALUES ('antony','eee');
insert into customer (name,dpt)VALUES ('job','ece');
查询1

select
dpt,
count(name)
  from customer
  where dpt='ece' or dpt='cse'
    group by dpt;
| dpt | count |
|-----|-------|
| cse |   2   |
| ece |   3   |
结果

select
dpt,
count(name)
  from customer
  where dpt='ece' or dpt='cse'
    group by dpt;
| dpt | count |
|-----|-------|
| cse |   2   |
| ece |   3   |
我需要的结果如下:

| cse/ece | 5 |
这怎么可能? sqlfiddle在这里:


您似乎在使用PostgreSQL(从SQLFIDLE链接可以推断出这一点)

如果是这种情况,那么您可以在外部查询中的查询上应用
array\u agg
sum

   SELECT array_agg(dpt), sum(cnt)
   FROM (
      SELECT dpt, count(name) as cnt
      FROM customer
      WHERE dpt='ece' OR dpt='cse'
      GROUP BY dpt) t;

您似乎在使用PostgreSQL(从SQLFIDLE链接可以推断出这一点)

如果是这种情况,那么您可以在外部查询中的查询上应用
array\u agg
sum

   SELECT array_agg(dpt), sum(cnt)
   FROM (
      SELECT dpt, count(name) as cnt
      FROM customer
      WHERE dpt='ece' OR dpt='cse'
      GROUP BY dpt) t;

您也可以使用
GROUP\u CONCAT

SELECT GROUP_CONCAT(dpt), SUM(cnt)
FROM(select
     dpt,
     count(name) cnt
     from customer
     where dpt='ece' or dpt='cse'
     group by dpt) t;

您也可以使用
GROUP\u CONCAT

SELECT GROUP_CONCAT(dpt), SUM(cnt)
FROM(select
     dpt,
     count(name) cnt
     from customer
     where dpt='ece' or dpt='cse'
     group by dpt) t;