SQLServer2005 中的几个统计技巧

时间:2024-01-18 00:28:01 

SQLServer2005 中的几个统计技巧 
在SQLServer中我们可以用over子句中来代替子查询实现来提高效率,over子句除了排名函数之外也可以和聚合函数配合。实现代码如下:


use tempdb
go
if (object_id ('tb' ) is not null )
drop table tb
go
create table tb (name varchar (10 ), val int )
go
insert into tb
select 'aa' , 10
union all select 'aa' , 20
union all select 'aa' , 20
union all select 'aa' , 30
union all select 'bb' , 55
union all select 'bb' , 45
union all select 'bb' , 0

select *
, 排名 = rank ()over (partition by name order by val )
, 占比 = cast (val * 1.0 / sum (val )over (partition by name ) as decimal (2 , 2 ))
, 距最大 = val - max (val )over (partition by name )
, 距最小 = val - min (val )over (partition by name )
, 距平均 = val - avg (val )over (partition by name )
from tb
标签:SQLServer2005,统计技巧
0
投稿

猜你喜欢

  • 采用XMLHTTP编写一个天气预报的程序

    2007-10-15 12:35:00
  • 安装多个版本的TensorFlow的方法步骤

    2022-12-10 00:13:02
  • python是先运行metaclass还是先有类属性解析

    2022-02-10 23:24:48
  • 手把手教你学会HBuilder打包APP

    2022-03-25 00:43:53
  • Python selenium 自动化脚本打包成一个exe文件(推荐)

    2023-01-13 02:37:39
  • on error goto (Vbscript)和try catch

    2008-08-04 13:22:00
  • Selenium Webdriver元素定位的八种常用方式(小结)

    2022-08-11 10:04:07
  • 企业网站FLASH引导页存在的意义

    2008-06-04 11:09:00
  • 树莓派安装OpenCV3完整过程的实现

    2023-11-06 06:26:08
  • Python OpenCV中的numpy与图像类型转换操作

    2023-11-17 09:24:20
  • oracle中存储函数与存储过程的区别介绍

    2023-07-12 23:40:15
  • python 日志模块 日志等级设置失效的解决方案

    2022-01-25 07:27:19
  • MySql添加新用户及为用户创建数据库和给用户分配权限方法介绍

    2024-01-29 01:03:10
  • Oracle9i取得建表和索引的DDL语句

    2010-07-20 12:59:00
  • Python中return函数返回值实例用法

    2023-11-19 02:11:36
  • opencv实现矿石图片检测矿石数量

    2021-08-26 02:17:39
  • python调用API接口实现登陆短信验证

    2021-03-13 00:04:03
  • Python3.6 之后字典是有序的?

    2021-02-14 08:27:53
  • Python实现各种邮件发送

    2021-09-01 17:35:47
  • Python 字符串的有关知识详解

    2022-03-14 16:54:12
  • asp之家 网络编程 m.aspxhome.com