Chinaunix首页 | 论坛 | 博客
  • 博客访问: 10289
  • 博文数量: 4
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 0
  • 用 户 组: 普通用户
  • 注册时间: 2014-03-20 06:49
文章分类

全部博文(4)

文章存档

2014年(4)

我的朋友
最近访客

分类: 数据库开发技术

2014-03-20 06:54:51

----集中度查询
1,分组,该组数据60%以上出现的值进行显示,否则不显示

2,值的小数只保留一位

select name,value_cut,pct,left(convert(varchar,value_cut),convert(int,(pct/0.6))*18) Percent60
--replace(convert(varchar,convert(int,(pct/0.6))*value),'0','') as Percent60 convert(decimal(13.1),value)
from
(
 select T1.name,value_cut,count_gro_nv,count_gro_n,
 convert(decimal(4,2),(convert(decimal(4,2),count_gro_nv)/count_gro_n)) pct
 from(
  select name,value_cut,count(value_cut) count_gro_nv
  from(
   select name,convert(decimal(13,1),value) value_cut
    from(--自测数据
    select '01' Code,'A' name,1 value
    union select '02','A',2
    union select '03','A',3
    union select '04','A',3
    union select '05','A',3
    union select '06','A',3
    union select '07','B',123456789012.999997
    union select '08','B',123456789012.999998
    union select '09','B',123456789012.999999
   ) T0
  ) TT group by name,value_cut
 ) T1 left join
 ( select name,count(value_cut) count_gro_n
  from(
   select name,convert(decimal(13,1),value) value_cut
    from(--自测数据
    select '01' Code,'A' name,1 value
    union select '02','A',2
    union select '03','A',3
    union select '04','A',3
    union select '05','A',3
    union select '06','A',3
    union select '07','B',123456789012.999997
    union select '08','B',123456789012.999998
    union select '09','B',123456789012.999999
   ) T0
  ) TT group by name
 ) T2 on  T1.name=T2.name
) TA

阅读(541) | 评论(0) | 转发(0) |
0

上一篇:SQL Server 数据加密

下一篇:没有了

给主人留下些什么吧!~~