首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL按一列分组,按另一列排序,然后响应第三列

SQL按一列分组,按另一列排序,然后响应第三列
EN

Stack Overflow用户
提问于 2014-03-07 17:46:32
回答 2查看 66关注 0票数 0

我有下面的表,这实际上是多个连接表的结果的最小示例。我现在想要按“person_ID”分组,并将所有“value”条目放在一行中,在feature_ID之后排序。

代码语言:javascript
复制
person_ID  | feature_ID | value
123        | 1          | 1.1
123        | 2          | 1.2
123        | 3          | 1.3
123        | 4          | 1.2
124        | 1          | 1.0
124        | 2          | 1.1
...

结果应该是:

代码语言:javascript
复制
123  |  1.1  |  1.2  | 1.3  |  1.2
124  |  1.0  |  1.1  | ...

应该有一个优雅的SQL查询解决方案,我既想不出来,也找不到。

对于快速重建,这将是示例数据:

代码语言:javascript
复制
create table example(person_ID integer, feature_ID integer, value float);
insert into  example(person_ID, feature_ID, value) values
  (123,1,1.1),
  (123,2,1.2),
  (123,3,1.3),
  (123,4,1.2),
  (124,1,1.0),
  (124,2,1.1),
  (124,3,1.2),
  (124,4,1.4); 

编辑:在现实生活应用中,每个人都有6374个条目。

我使用的是SQL8.3.23数据库,但我认为使用标准PostgreSQL应该可以解决这个问题。

EN

回答 2

Stack Overflow用户

发布于 2014-03-07 18:13:44

数据库并不擅长转置。现在有一个模糊的列增长问题,我的意思是数据库如何处理可变数量的列?这不是电子表格。

这种排序转置通常是在报表编写器中完成的,而不是在SQL中。

..。或者在程序中,比如php中。

票数 0
EN

Stack Overflow用户

发布于 2014-03-07 18:20:47

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22246612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档