Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/77.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
Sql 如何从我的表中创建查询请查看图片_Sql - Fatal编程技术网

Sql 如何从我的表中创建查询请查看图片

Sql 如何从我的表中创建查询请查看图片,sql,Sql,我想询问一下调查结果 如何实现此目标?这是您无需分组即可选择值的方法: select name, case when ket = 'dalam proses' then 1 else 0 end dalam_proses, 'selesai' then 1 else 0 end selesai from yourtable; 让我们将其用作子查询: select name, sum(dalam_proses) as dalam_proses, sum(selesai) as selesai

我想询问一下调查结果


如何实现此目标?

这是您无需分组即可选择值的方法:

select name, case when ket = 'dalam proses' then 1 else 0 end dalam_proses, 'selesai' then 1 else 0 end selesai
from yourtable;
让我们将其用作子查询:

select name, sum(dalam_proses) as dalam_proses, sum(selesai) as selesai
from (
    select name, case when ket = 'dalam proses' then 1 else 0 end dalam_proses, 'selesai' then 1 else 0 end selesai
    from yourtable
} t
group by name;

您可以使用子查询来完成此操作,如下所示:

select 
    name, 
    distinct(name) , 
    count(select ket from my_table where ket = 'dalam proses' ) as 'dalam proses',
    count(select ket from my_table where ket = 'selesai' ) as 'selesai'
from my_table
group by name;

使用
case
表达式进行条件聚合:


欢迎来到Stackoverflow。将帮助你提出一个好问题,让人们更容易帮助你。特别是,给出一段最简单的代码来演示您的问题,而不是一幅图像,这有助于测试
dalam进程
selesai
。这些是列
ket
的唯一有效值吗?顺便说一下,建议您也使用正在使用的DBMS标记您的问题。您正在使用SQL Server吗?你在使用MySQL吗?
select name,
       sum(case when ket = 'dalam proses' then 1 else 0 end) as dalam_proses,
       sum(case when ket = 'selesai' then 1 else 0 end) as selesai
from tablename
group by name