陈ENTJ 2020-04-16 11:23 采纳率: 0%
浏览 113

在SQL中是不是有break on之后,再写compute或compute by都只显示一个结果集呀?(若没有break on,就会返回两个/多个结果集)

比如,题目:一个表中的ID有多个记录,把所有这个ID的记录查出来,并显示共有多少条记录数?

break on id skip 1
select *
from table
group by id
having count(id)>1
order by id
compute count label “COUNT” of id on id

加了break的例子:

  • 写回答

1条回答 默认 最新

  • 憧憬blog 2023-03-15 01:23
    关注

    是的,你的理解是正确的。在SQL中使用break on时,只会显示一个结果集,无论是使用compute还是compute by都只会显示一个结果集。如果你想在break on之后显示多个结果集,可以使用多个break on语句或者不使用break on语句。针对你提到的问题,下面是一个可以使用的SQL代码示例:

    select id, count(*) as count
    from table
    group by id
    having count(id)>1
    
    union all
    
    select 'Total' as id, count(*) as count
    from table
    having count(id)>1
    

    在上面的示例中,我们使用了union all语句将两个结果集合并到一起,并在第一个结果集中统计了每个ID的记录数,而在第二个结果集中统计了所有记录的总数,并使用'Total'作为ID。

    评论

报告相同问题?

悬赏问题

  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥15 想问一下树莓派接上显示屏后出现如图所示画面,是什么问题导致的
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染