我有一个数据库,其中包含产品 ID 和 5 位客户给出的评分。数据库中的每一行代表 1 条评论。它非常简单,并且在评论为 1、2、3、4 或 5 星的列中有产品 ID 和 1。它是这样布置的:
Product ID | 1 | 2 | 3 | 4 | 5 |
1294518 | 1 | 0 | 0 | 0 | 0 |
9226582 | 0 | 0 | 1 | 0 | 0 |
3946583 | 0 | 0 | 0 | 1 | 0 |
7392588 | 1 | 0 | 0 | 0 | 0 |
1196585 | 0 | 0 | 0 | 0 | 1 |
1196585 | 0 | 0 | 0 | 0 | 1 |
我想合并我有重复产品 ID 的行。根据上面的示例,产品 ID 1196585 有两行。在这种情况下,我想将其合并为一行,并在 5 列下方显示 2,以显示该产品已收到两个 5 星评价。
为了澄清我想修改表格,以便合并重复的行,以便之后没有重复的产品 ID,并且在每列 1、2、3、4 和 5 下,我留下了每个的次数例如,这些产品 ID 中有 1 个已收到 1、2、3、4 和 5 星评价。
请您帮我理解如何使用 SQL 来实现这一点?