ITPub博客

首页 > 数据库 > 数据库开发技术 > 子查询分解

子查询分解

原创 数据库开发技术 作者:kl911 时间:2008-05-20 22:54:06 0 删除 编辑

引自Johnathion的COB Fundamental:

数学家的对话:

“三个女儿年龄和36,年龄和是在场所有人的总数,大女儿又只宠物仓鼠”

with age_list as(
select rownum age from dba_objects where rownum <=36),
product_check as(
select age1.age youngest,
age2.age middle,
age3.age oldest,
age1.age + age2.age + age3.age as summed,
age1.age * age2.age * age3.age as product
from age_list age1
,age_list age2
,age_list age3
where age2.age >= age1.age
and age3.age >= age2.age
and age1.age * age2.age * age3.age =36)
,
summed_check as (
select youngest, middle, oldest, summed, product
from
( select youngest, middle, oldest, summed, product, count(*) over(partition by summed) ct
from product_check)
where ct > 1)
select * from summed_check
where oldest > middle
;

[@more@]

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/661919/viewspace-1004338/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-01-03

  • 博文量
    20
  • 访问量
    323312