比如,题目:一个表中的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的例子:
比如,题目:一个表中的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的例子:
是的,你的理解是正确的。在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。