日期:2014-05-17 浏览次数:20770 次
--第二個問題:
select 应付金额,项目名称 from tabname where 项目名称 in
(
select 项目名称 from tabname where
case when 应付金额 符合条件1 then 运算公式1 when 应付金额 符合条件2 then 运算公式2 when.... end
)
--完整的
select 应付金额,项目名称 from tabname where
case when 应付金额 符合条件1 then 运算公式1 when 应付金额 符合条件2 then 运算公式2 when.... end
union all
select 应付金额,项目名称 from tabname where 项目名称 in
(
select 项目名称 from tabname where
case when 应付金额 符合条件1 then 运算公式1 when 应付金额 符合条件2 then 运算公式2 when.... end
)
and not
(
case when 应付金额 符合条件1 then 运算公式1 when 应付金额 符合条件2 then 运算公式2 when.... end
)
select 应付金额,项目名称
from
(
select 应付金额,项目名称,
case when 应付金额 符合条件1 then 运算公式1 else 0 end as flag1,
case when 应付金额 符合条件2 then 运算公式2 else 0 end as flag2,
case when.... end as flag10
from tabname
)t
where flag1 <>0 and flag2 <> 0... --flag不为0表示满足条件
union all
select 应付金额,项目名称
from
(
select 应付金额,项目名称,
case when 应付金额 符合条件1 then 运算公式1 else 0 end as flag1,
case when 应付金额 符合条件2 then 运算公式2 else 0 end as flag2,
case when.... end as flag10
from tabname
)t
where flag1 =0 and flag2 = 0... --flag为0表示不满足条件