sql count case when 0 then

本文提供了几个SQL语句示例,包括检查数据库中是否存在重复的bug编号、更新特定记录的bug编号以及生成新的bug编号的方法。这些示例展示了如何使用SQL进行数据验证和维护。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//bug编号是否重复

select bug.bug_code,count(bug.bug_code) c from bug_record bug
group by bug.bug_code
having count(bug.bug_code)>1

 

//修改bug编号 sql拼

update bug_record bug set bug.bug_code=(
select '6-01_bug_' || to_char(to_number(substr(code,instr(code,'_')+1))+2) a  from (
select substr(BUG_CODE,instr(BUG_CODE,'_')+1) code from Bug_Record where BUG_ID=(
select max(bug.BUG_ID) from Bug_Record  bug where bug.BUG_CODE like '6-01_bug_%')
)
) where bug.bug_id='29079';
commit;

 

//生成bug编号

select ('24-01_bug_' ||  (select distinct case  when (select count(1) from (
select to_char(to_number(substr(code,instr(code,'_')+1))+1)  a from (
 select substr(BUG_CODE,instr(BUG_CODE,'_')+1) code from Bug_Record where BUG_ID=(
 select max(bug.BUG_ID)
  from Bug_Record  bug
 where bug.BUG_CODE like '24-01_bug_%')
 group by bug_code)
 group by code))=0 then '1' else (
select to_char(to_number(substr(code,instr(code,'_')+1))+1)  a from (
 select substr(BUG_CODE,instr(BUG_CODE,'_')+1) code from Bug_Record where BUG_ID=(
 select max(bug.BUG_ID)
  from Bug_Record  bug
 where bug.BUG_CODE like '24-01_bug_%')
 group by bug_code)
 group by code) end as b from bug_record)) c from dual

SQL中,COUNT(CASE WHEN...)语句用于计算满足特定条件的行数。在给定的引用中,使用了几个不同的条件来计算不同的数量。 引用中的语句 ``` sum(case when onefield = 1 then 1 else 0 end) one_count ``` 计算了字段onefield等于1的行的数量,并将结果存储在one_count中。 引用中的语句 ``` sum(case when onefield = 0 then 1 else 0 end) zero_count ``` 计算了字段onefield等于0的行的数量,并将结果存储在zero_count中。 引用中的语句 ``` select count(case when name like '李%' then name end) as li_cnt, count(case when name like '王%' then name end) as wa_cnt from student; ``` 在这个例子中,通过使用CASE WHEN语句和LIKE子句,计算了满足条件name以'李'开头的行的数量,并将结果存储在li_cnt中。同样地,计算了满足条件name以'王'开头的行的数量,并将结果存储在wa_cnt中。 综上所述,COUNT CASE WHEN语句在SQL中用于根据给定的条件计算行数。可以根据实际需求使用不同的条件来统计数据。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [sql 语句进阶操作(count、sum、case-when、group_concat、order by limit offset、dense_rank rank、exis...](https://blog.csdn.net/lyh_950622/article/details/107185718)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [SQLcountcase when结合使用统计某个条件下不重复的记录数](https://blog.csdn.net/u011489186/article/details/112274838)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值