Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.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_Oracle - Fatal编程技术网

Sql 如何在列中显示我的所有方案名称

Sql 如何在列中显示我的所有方案名称,sql,oracle,Sql,Oracle,我想在“我的方案”列中显示我的所有方案名称(A组、B组和C组)。 如果STATUS列的所有值均为N,则条件应为空 Mytable: 这是我的查询(我正在使用oracle) 我的结果 我期待的结果 使用条件聚合: SELECT SCHEME, LISTAGG(CASE WHEN STATUS = 'Y' THEN CRITERIA END, ', ') WITHIN GROUP (ORDER BYCRITERIA) AS CRITERIA FROM MYTABLE GROUP B

我想在“我的方案”列中显示我的所有方案名称(A组、B组和C组)。 如果STATUS列的所有值均为N,则条件应为空

Mytable:

这是我的查询(我正在使用oracle)

我的结果

我期待的结果


使用条件聚合:

SELECT SCHEME,
       LISTAGG(CASE WHEN STATUS = 'Y' THEN CRITERIA END, ', ') WITHIN GROUP (ORDER BYCRITERIA) AS CRITERIA
FROM MYTABLE
GROUP BY SCHEME
SELECT SCHEME,
       LISTAGG(CASE WHEN STATUS = 'Y' THEN CRITERIA END, ', ') WITHIN GROUP (ORDER BYCRITERIA) AS CRITERIA
FROM MYTABLE
GROUP BY SCHEME