Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.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
TSQL将多行数据查询到一行_Sql_Sql Server_Tsql - Fatal编程技术网

TSQL将多行数据查询到一行

TSQL将多行数据查询到一行,sql,sql-server,tsql,Sql,Sql Server,Tsql,谢谢你过来 好的,我的问题如下: 我旋转原始表以获取此表: SEQ, Location ID: License1, License 2, License 3 ------------------------------------------------------ Key1, 1, value1, NULL, NULL. Key2, 1, NULL, value2,

谢谢你过来

好的,我的问题如下: 我旋转原始表以获取此表:

SEQ,  Location ID:            License1, License 2, License 3
------------------------------------------------------
Key1,         1,              value1,   NULL,      NULL.
Key2,         1,              NULL,     value2,    NULL,
Key3,         1,              NULL,     NULL,      value3
我想查询以返回如下数据集:

LocationID, Value1, Value2, Value3
可能有人问过这个问题,但我在搜索后很难找到它

我的问题问得很清楚,可能对社区有用。

试试:

select LocationID,
       max(License1) License1,
       max(License2) License2,
       max(License3) License3
from my_table
group by LocationID

没问题。谢谢你的修复。那么LocationID是你的主键?你知道它必须是独一无二的,对吗?另外,其他列的名称是什么?因此,表中还有另一个名为SEQ的值,用作主键。位置ID不唯一。请在select上使用group by组合具有匹配条件的行,并使用Max将行中的值聚合为列值。请阅读一些改进问题的技巧。您的表格图表显示了两列标题和五列数据,其中一列标记为主键,而您在注释中提到主键字段称为SEQ。所以我一点也不清楚你们的桌子到底是什么样子,你们想得到什么样的结果。你能澄清一下这些问题吗?理想的方法是提供一个定义表以及一些示例数据的方法。谢谢。完全是我想要的。