美文网首页
SQL每日一题(2020-06-05)

SQL每日一题(2020-06-05)

作者: 扎西的德勒 | 来源:发表于2020-06-08 09:07 被阅读0次

题目:

有一张表T,里面的数据如下:

image

希望得到如下结果

image

该如何写这个查询?

参考答案:

数据库版本:Server version: 8.0.20 MySQL Community Server - GPL

建表语句

create table dailytest_20200605(
    id int,
    pid int
);

数据准备

insert into dailytest_20200605 values(1,0),(2,1),(3,2),(4,3);

查询逻辑

select c.id,
       c.pid,
       group_concat(c.bid order by c.id SEPARATOR '>') as path
from (select a.id,
             a.pid,
             b.id as bid
      from dailytest_20200605 a
      left join dailytest_20200605 b
          on a.id >= b.id
      order by a.id) c
group by c.id, c.pid;

附:
题目来源:https://mp.weixin.qq.com/s/DmIkopgSmL3a_y3xaW5YBA

相关文章

  • SQL每日一题(2020-06-05)

    题目: 有一张表T,里面的数据如下: 希望得到如下结果 该如何写这个查询? 参考答案: 数据库版本:Server ...

  • SQL每日一题(20200819)

    题目 有一个商场,每日人流量信息被记录在这三列信息中:序号(id)、日期(date)、人流量(people)。请编...

  • SQL每日一题(20200817)

    题目 有如下一张表T 列AID和BID是一对多的关系,希望将BID中同时存在3和5的AID找出来,预计的结果如下:...

  • 2020-06-09

    2020-06-06 2020-06-06 2020-06-05 2020-06-05 2020-06-04 20...

  • 2020-06-06

    2020-06-06 2020-06-05 2020-06-05 2020-06-04 2020-06-03 20...

  • 2020-06-06

    2020-06-06 2020-06-05 2020-06-05 2020-06-04 2020-06-03 20...

  • Day 4 Project 我的微信好友

    附:每日一题

  • 经典Hive SQL面试题

    第一题 需求 实现 数据准备 查询SQL 第二题 需求 实现 数据准备 查询SQL实现 第三题 需求 实现 数据准...

  • SQL每日一题(2020-07-02)

    题目: 你能写一个 SQL 查询语句,找到只出现过一次的数字中,最大的一个数字吗?下面是测试数据 对于上面给出的样...

  • SQL每日一题(2020-07-01) ***

    题目: 订单中有多个商品,想要查询订单表(Orders)中同时包含有商品A、商品B、商品C等的所有订单信息。 希望...

网友评论

      本文标题:SQL每日一题(2020-06-05)

      本文链接:https://www.haomeiwen.com/subject/tefazhtx.html