Sql 以行格式获取数据

Sql 以行格式获取数据,sql,sqlite,Sql,Sqlite,如何从表中获取数据: id | parametername | value | datetime 作为: 您可以使用条件聚合: select datetime, max(case when parametername = 'name1' then value end) as value_1, max(case when parametername = 'name2' then value end) as value_2, max(case when p

如何从表中获取数据:

id | parametername | value | datetime
作为:


您可以使用条件聚合:

select datetime,
       max(case when parametername = 'name1' then value end) as value_1,
       max(case when parametername = 'name2' then value end) as value_2,
       max(case when parametername = 'name3' then value end) as value_3
from t
group by datetime;

你好我利用了这个解决方案,但我最多可以有150个参数名,使请求不是那么大就不起作用了?@Dmitry。它将适用于150个参数。您可以使用电子表格(或元数据表上的SQL查询)生成代码。
select datetime,
       max(case when parametername = 'name1' then value end) as value_1,
       max(case when parametername = 'name2' then value end) as value_2,
       max(case when parametername = 'name3' then value end) as value_3
from t
group by datetime;