Navigation

    MemFireDB论坛

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups

    叮~您有一封国庆SQL闯关邀请函,请查收

    活动
    10
    16
    273
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      aaaa果 last edited by

      b4d70ada-2674-41db-a6fd-6fb57968ef0a-image.png

      659aae1c-1628-4d12-86d7-2a41ac6b3b96-image.png

      A 1 Reply Last reply Reply Quote 0
      • W
        wsy last edited by

        *第一关

        SELECT concat(substr(attr,8,2),substr(attr,3,2)) str FROM LEVEL1  
        
        • 3734c866-e5e5-4764-8ef5-5d668eee4bbd-image.png

        • 第二关

        SELECT '        chart       ' AS chart UNION ALL
        SELECT '--------------------' AS chart UNION ALL
        SELECT chart FROM (
        SELECT concat (LPAD(js :: TEXT,2,'0'),' ','|',' ',COALESCE (MIN (gou),'  '),' ',COALESCE (MIN (qing),'  '),' ',COALESCE (MIN (kuai),'  '),' ',COALESCE (MIN (lei),'  '),' ') AS chart,LPAD(js :: TEXT,2,'0') seNo FROM (
        SELECT ROW_NUMBER () OVER (PARTITION BY attr ORDER BY attr) js,CASE WHEN attr='国' THEN '国' END gou,CASE WHEN attr='庆' THEN '庆' END qing,CASE WHEN attr='快' THEN '快' END kuai,CASE WHEN attr='乐' THEN '乐' END lei FROM level2) tmp GROUP BY js ORDER BY seNo DESC) tmp UNION ALL 
        SELECT '--------------------' UNION ALL 
        SELECT '     2022-10-01     '
        

        a3028fc2-8fab-486b-a7f8-d8f9da5ba192-image.png

        1 Reply Last reply Reply Quote 1
        • J
          joy last edited by

          第二关
          SQL 脚本:
          WITH zuguowansui AS (
          SELECT concat(LPAD(rn::text, 2, '0'),' ','|',' ',COALESCE(min(guo),' '),' ',COALESCE(min(qing),' '),' ',COALESCE(min(kuai),' '),' ',COALESCE(min(le),' '),' ') as chart,
          LPAD(rn::text, 2, '0'),
          '|',
          min(guo) "国",
          min(qing) "庆",
          min(kuai) "快",
          min(le) "乐"
          FROM (SELECT row_number() OVER (PARTITION BY attr ORDER BY attr) rn,
          CASE WHEN attr = '国' THEN '国' END guo,
          CASE WHEN attr = '庆' THEN '庆' END qing,
          CASE WHEN attr = '快' THEN '快' END kuai,
          CASE WHEN attr = '乐' THEN '乐' END le
          FROM level2) zuguowansui
          GROUP BY rn
          ORDER BY 1 DESC, 2 DESC, 3 DESC, 4 DESC)

          select ' chart ' as biaotou
          union all
          select '--------------------' as fengefuqi
          union all
          SELECT chart
          from zuguowansui
          union all
          select '--------------------' fengefuzhi
          union all
          select ' 2022-10-01 ' guoqingjie

          效果图:
          182d9729-6384-4b76-a823-4ce5fc0fc9d3-image.png

          1 Reply Last reply Reply Quote 1
          • J
            joy last edited by

            -- 第一关
            SQL 脚本:
            select concat(right(attr,2),SUBSTRING(attr,3,2)) guoqingkuaile from level1
            效果图
            0317faa8-2a3d-4932-8233-64969ee2ed65-image.png

            1 Reply Last reply Reply Quote 1
            • 花
              花殇 last edited by

              This post is deleted!
              1 Reply Last reply Reply Quote 0
              • R
                rui @pekin last edited by

                @pekin 确实😊 😊

                1 Reply Last reply Reply Quote 0
                • pekin
                  pekin @rui last edited by

                  @rui 哈哈哈哈,这出题人绝对领悟到了羊的精髓了👶 🤡

                  不要为了保持存活浪费太多时间,要有活自己的时间

                  R 1 Reply Last reply Reply Quote 0
                  • C
                    caffeine last edited by

                    @admin 在 叮~您有一封国庆SQL闯关邀请函,请查收 中说:

                      2022-10-01
                    

                    第一关:

                    -- 闯关第一关
                    select concat(right(attr,2),SUBSTRING(attr,3,2)) from level1 
                    

                    效果:
                    0ade838f-bc67-4266-bf90-8a5b4181dccf-image.png

                    第二关:

                    -- 闯关第二关
                    -- 闯关第二关
                    WITH d AS (
                        SELECT row_number() OVER (PARTITION BY attr ORDER BY attr) rn,
                               CASE WHEN attr='国' THEN '国'END gou,
                               CASE WHEN attr='庆' THEN '庆' END qing,
                               CASE WHEN attr='快' THEN '快' END kuai,
                               CASE WHEN attr='乐' THEN '乐'  END lei
                        FROM level2
                    )
                    
                    select concat(lpad(ss."标号",2,'0') ,' | ',ss."国",' ',ss."庆",' ',ss."快",' ',ss."乐")chart from(
                    select cast(row_number() over(order by t."庆" desc) as varchar) "标号",t.* from(
                      SELECT 
                            case when min(gou)='国' then '国' else ' ' end "国",
                             case when min(qing)='庆' then '庆' else ' ' end "庆",
                             case when min(kuai)='快' then '快' else ' ' end "快",
                             case when min(lei)='乐' then '乐' else ' ' end "乐"
                      FROM d
                      GROUP BY rn
                      ORDER BY 国 ASC, 庆 ASC, 快 ASC, 乐 ASC)t)ss
                    union all select '-------------------'
                    union all select '     2022-10-01'
                    
                    
                    

                    效果:
                    1fa27578-0fe0-4de2-8a73-a4aa4f78ec4a-image.png

                    1 Reply Last reply Reply Quote 1
                    • R
                      rui @MemFireDB Robot last edited by rui

                      @memfiredb-robot 加上了

                      更新 新要求

                      03f46fdd-6cfa-4b64-9339-d9f6a2d97b80-680c22ff4b5ba1c6b3fa6720f3e91bc.png

                      验证

                      39fdeb7d-ed08-4626-a1d7-1e73687c27d0-image.png

                      code

                      
                      WITH tmp AS (
                          SELECT concat(LPAD(rn::text, 2, '0'),' ','|',' ',COALESCE(min(gou),'  '),' ',COALESCE(min(qing),'  '),' ',COALESCE(min(kuai),'  '),' ',COALESCE(min(lei),'  '),' ') as chart,
                                 LPAD(rn::text, 2, '0'),
                                 '|',
                                 min(gou)  "国",
                                 min(qing) "庆",
                                 min(kuai) "快",
                                 min(lei)  "乐"
                          FROM (SELECT row_number() OVER (PARTITION BY attr ORDER BY attr) rn,
                                       CASE WHEN attr = '国' THEN '国' END                 gou,
                                       CASE WHEN attr = '庆' THEN '庆' END                 qing,
                                       CASE WHEN attr = '快' THEN '快' END                 kuai,
                                       CASE WHEN attr = '乐' THEN '乐' END                 lei
                                FROM level2) tmp
                          GROUP BY rn
                          ORDER BY 1 DESC, 2 DESC, 3 DESC, 4 DESC)
                      
                      select '        chart       ' as chart
                      union all
                      select '--------------------' as chart
                      union all
                      SELECT chart
                      from tmp
                      union all
                      select '--------------------'
                      union all
                      select '     2022-10-01     '
                      

                      第一题第二题差这么多 我愿称为关了个关

                      pekin 1 Reply Last reply Reply Quote 0
                      • M
                        MemFireDB Robot @rui last edited by admin

                        @rui 亲~第二关答案格式详参文章中的“命令行下的效果”以及“MemFire Cloud SQL编辑器中的效果”哦~需要包含 表头+柱状图+左侧标尺+时间 哦~

                        R 1 Reply Last reply Reply Quote 0
                        • R
                          rui last edited by

                          根据生成的数据,构造一条SQL,输出结果为:国庆快乐

                          select concat(right(attr,2),right(left(attr,4),2)) from level1 ;
                          

                          验证:

                          62cfab20-337f-4ad4-b305-47cb5a4f8cad-image.png

                          根据生成的数据,用一条SQL语句,生成国庆快乐的柱状图,柱状图所表示的“国庆快乐”的字数要与实际生成的数据保持一致:

                          WITH d AS (
                              SELECT row_number() OVER (PARTITION BY attr ORDER BY attr) rn,
                                     CASE WHEN attr='国' THEN '国' END gou,
                                     CASE WHEN attr='庆' THEN '庆' END qing,
                                     CASE WHEN attr='快' THEN '快' END kuai,
                                     CASE WHEN attr='乐' THEN '乐' END lei
                              FROM level2
                          )
                          SELECT min(gou) "国",
                                 min(qing) "庆",
                                 min(kuai) "快",
                                 min(lei) "乐"
                          FROM d
                          GROUP BY rn
                          ORDER BY 1 DESC, 2 DESC, 3 DESC, 4 DESC;
                          

                          验证:

                          9177ec74-a29e-4832-903e-4b58c5b52a3a-image.png

                          M 1 Reply Last reply Reply Quote -1
                          • First post
                            Last post