2007-3-21 13:40:00
Sybase IQ常用的分析型函数例子
Sybase IQ是高性能的数据仓库引擎,在SQL编程方面也引入了很多新的特性,分析型函数就是其一。常用的分析型函数包括:Grouping( ), Variance( ),StdDev( ), Rank( ), Dense_Rank( ),Percentile_Disc( ), Percentile_Count( ), Ntile( )等。
使用以上分析型函数,可以为用户的前端编程或者后台SQL编程带来极大的方便,以下对上述函数举些简单的例子。
select top 10 taxpayercode ,sum(mny_seze) as mny_seze_sukm, sum(mny_srze) as mny_srze_sum, DENSE_RANK() over( order by mny_srze_sum desc) as rank_all
from tqa_f_nsrqusb where id_mth=200702
group by taxpayercode
order by rank_all
from tqa_f_nsrqusb where id_mth=200702
group by taxpayercode
order by rank_all
select taxpayercode ,sum(mny_seze) as mny_seze_sukm,sum(mny_srze) as mny_srze_sum
from tqa_f_nsrqusb where id_mth=200702
group by taxpayercode order by mny_srze_sum desc
from tqa_f_nsrqusb where id_mth=200702
group by taxpayercode order by mny_srze_sum desc
select top 10 taxpayercode ,sum(seze) as seze , NTILE(2) over ( order by seze desc) as ntile
from whtaxpayertaxbook where yr_sb=2005 and mth_sb=1
group by taxpayercode
order by seze
select top 10 taxpayercode, sum(seze) as seze, percent_rank() over (order by seze desc) as per_rank
from whtaxpayertaxbook where yr_sb=2005 and mth_sb=1
group by taxpayercode
order by seze
select top 10 taxpayercode, sum(seze) as seze, rank() over (order by seze desc) as per_rank
from whtaxpayertaxbook where yr_sb=2005 and mth_sb=1
group by taxpayercode
order by seze
from whtaxpayertaxbook where yr_sb=2005 and mth_sb=1
group by taxpayercode
order by seze
select top 10 taxpayercode, sum(seze) as seze, percent_rank() over (order by seze desc) as per_rank
from whtaxpayertaxbook where yr_sb=2005 and mth_sb=1
group by taxpayercode
order by seze
select top 10 taxpayercode, sum(seze) as seze, rank() over (order by seze desc) as per_rank
from whtaxpayertaxbook where yr_sb=2005 and mth_sb=1
group by taxpayercode
order by seze
顺便提一下,在Oracle 9i以上的版本中也有类似的分析型函数,实现的功能也与此类似。
0
推荐到鲜果:
下一篇:又是一年元宵时
上一篇:春去春来,时光如飞啊....


评论