Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/73.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 Teradata将行转换为列(透视)_Sql_Teradata_Teradata Sql Assistant - Fatal编程技术网

Sql Teradata将行转换为列(透视)

Sql Teradata将行转换为列(透视),sql,teradata,teradata-sql-assistant,Sql,Teradata,Teradata Sql Assistant,我有一张像这样的桌子 及 我想把那张桌子改成 使用TeraDataQuery如果您知道值列表,可以使用条件聚合: select max(case when name = 'AA' then value end) as aa, max(case when name = 'BB' then value end) as bb, max(case when name = 'CC' then value end) as cc, . . . from t; 如

我有一张像这样的桌子

我想把那张桌子改成


使用TeraDataQuery

如果您知道值列表,可以使用条件聚合:

select max(case when name = 'AA' then value end) as aa,
       max(case when name = 'BB' then value end) as bb,
       max(case when name = 'CC' then value end) as cc,
       . . .
from t;

如果您不知道值列表,那么你不能用简单的SQL查询来实现这一点。

嘿,对于TeraData,如果有帮助,请遵循下面的说明。请检查链接SQL Server看看这个线程:嗨,谢谢你的回答,当列名是静态的,但在我的例子中,列名及其值会动态变化,因此,不必对其进行硬编码,而是有可能使其变为静态为动态生成的表工作?仅在存储过程中允许动态生成SQL。您可以将任何查询编译为字符串,然后执行它。