大白的进阶之路 2024-02-24 17:36 采纳率: 0%
浏览 5
已结题

如何用SQL将图一 处理成 按照逗号分隔?

用SQL将图一 处理成 按照逗号分隔
然后转为行的吗 如图二 是sqlite数据库

img


img

  • 写回答

9条回答 默认 最新

  • 码农阿豪@新空间 新星创作者: 前端开发技术领域 2024-02-24 17:36
    关注
    让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如需一对一服务私聊我哦
    解题思路:
    1. 首先使用SUBSTR和INSTR函数将标签按逗号分隔。
    2. 然后使用UNPIVOT函数将列转换为行。 UNPIVOT函数将列主题与值列名称(或列的列表) 指定为源,然后将列值返回为行。 对于每个返回的行,UNPIVOT函数输出源的名称列中的值与行中返回的值。
    3. 最后可以使用GROUP BY和ORDER BY对标签进行排序并计数。 示例代码:
    -- 将标签按逗号分隔
    SELECT id, 
           SUBSTR(tag, 1, INSTR(tag, ',') - 1) AS tag1, 
           SUBSTR(tag, INSTR(tag, ',') + 1) AS tag2
    FROM table1;
    -- 将列转换为行
    SELECT id, tag
    FROM table1
    UNPIVOT (tag FOR tags IN (tag1, tag2));
    -- 计数标签并排序
    SELECT tag, COUNT(*) AS count
    FROM (
      SELECT id, tag
      FROM table1
      UNPIVOT (tag FOR tags IN (tag1, tag2))
    )
    GROUP BY tag
    ORDER BY count DESC;
    

    注:具体的代码实现可能因为数据库类型和数据结构而略有不同,可以根据实际情况进行调整。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 2月24日
  • 修改了问题 2月24日
  • 赞助了问题酬金15元 2月24日
  • 创建了问题 2月24日