Oracle SQL排列组合之组合问题

本文探讨了一个使用Oracle SQL解决的组合问题。面对产品部门的分析需求,问题简化为一个组合情况的统计。当表中c1、c2、c3任一字段不为空时,c4字段标记为'Y'。内容涉及如何统计满足特定条件的组合数量,例如(c1、c2)组合的值为2,意味着有2行同时满足c1和c2非空。测试SQL代码被提供以展示解决方案。
摘要由CSDN通过智能技术生成

产品部门有一个分析需求,简化后是个组合问题,简单表述如下:

表结构

c4列表示状态,c1,c2,c3只要一个不为空,c4就为Y                    
现在想知道每个组合的情况

比如为什么组合(c1、c2)的值是2,因为只有2行(第1行、第3行)数据满足c1、c2都不为空

相关测试sql代码如下:

SQL> create table t (					
  2  id varchar2(1),					
  3  c1 int,					
  4  c2 int,					
  5  c3 int,					
  6  c4 varchar2(1)					
  7  );					
					
Table created.					
					
SQL> insert into t values ('a',1,1,null,'Y');					
				
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值