拿个业务场景说这个案例,好比我们有个表内里大概有批改过的数据,批改过得数据不会随着新批改的数据覆盖,而是逐条插入表中,如果想找出包含最早批改的数据和最新批改数据的话,那么我们就必要用到了havinng 用法,假设最开始的批单号是000,批单号是累加的
好比我们有个表 table 表内里有两个字段 订单号(order_no) 和 批单号(endorseq_no)
那么写法就是
- select order_no
- from table
- group by order_no
- having sum(case when endorseq_no = '000' then 1
- else 0 end) >= 1 --这个是判断必须包含最初的批单
- and count(*) >= 2 --这个是判断除了最初的批单之外还需要有新批改的批单
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |