具有动态列名称的 Group 和 Sum

发布于 2024-12-10 20:21:44 字数 303 浏览 0 评论 0原文

我需要按年份对表进行分组,并使用动态列名称对所有可能的类型(未知)进行求和。

示例表:

Type|Year
a    2001
a    2001
c    2002
b    2002
c    2003
a    2003
z    2003

示例结果:

Year: 2001, Type_a: 2
Year: 2002, Type_c: 1, Type_b: 1
Year: 2003, Type_c: 1, Type_a: 1, Type_z: 1

I need to GROUP a table by Year and SUM all the possible Types (unknown) with dynamic column names.

Sample Table:

Type|Year
a    2001
a    2001
c    2002
b    2002
c    2003
a    2003
z    2003

Sample Result:

Year: 2001, Type_a: 2
Year: 2002, Type_c: 1, Type_b: 1
Year: 2003, Type_c: 1, Type_a: 1, Type_z: 1

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

红ご颜醉 2024-12-17 20:21:44

您可以使用这样的查询对类型进行分组和求和 -

SELECT year, type, COUNT(type) FROM table_name GROUP BY year, type;

它提供了另一个结果集,但包含您想要的数据。

You could group and sum types using a query like this -

SELECT year, type, COUNT(type) FROM table_name GROUP BY year, type;

It gives another result set, but with data you want.

属性 2024-12-17 20:21:44
SELECT year,COUNT(type) from tableName GROUP BY(type)

试试那个

SELECT year,COUNT(type) from tableName GROUP BY(type)

try that one

給妳壹絲溫柔 2024-12-17 20:21:44

SOL 不是为此设计的,结果不可能每行都有不同数量的列。

我认为实现这一目标的最佳方法是通过示例连接信息来改变结果集的设计。或者用 null 或空值填充固定数量的 .column 。

另一方面,如果您的语言允许每行的动态列数,您可以以编程方式完成此操作。

SOL is not designed for that, the result could never have a various number of column for each line.

I think the best way to get that is to change the design of your resultset with concatenation of information by example. Or having fixed number of.column filled by null or empty values.

In the other hand you can do it programmaticaly if your language allows dynamic number of column for each row.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文