首页 > 解决方案 > Sql 循环遍历列的唯一元素

问题描述

我正在尝试将行的数据放入列中。这是我查询前的数据。

在此处输入图像描述

这是我的查询。

SELECT
    Date,
    SUM(CASE WHEN (Terms="Art") THEN 1 ELSE 0 END) AS Art,
    SUM(CASE WHEN (Terms="Action") THEN 1 ELSE 0 END) AS Action,
    SUM(CASE WHEN (Terms="Board") THEN 1 ELSE 0 END) AS Board,
    SUM(CASE WHEN (Terms="Puzzle") THEN 1 ELSE 0 END) AS Puzzle,
    SUM(CASE WHEN (Terms="Adventure") THEN 1 ELSE 0 END) AS Adventure,
    SUM(CASE WHEN (Terms="Others") THEN 1 ELSE 0 END) AS Others
FROM 
    __table__
GROUP BY 
    Date

查询后这是我的数据。

在此处输入图像描述

这是好的和预期的数据。但是问题出在查询中,您可以看到我必须明确写出每个术语。我想使用循环自动化。理论上的解决方案是编写子查询来获取所有唯一的术语,然后循环它们。但我不知道怎么做。

标签: sqlsqlite

解决方案


推荐阅读