位置: 编程技术 - 正文

SqlServer 2005 T-SQL Query 学习笔记(2)

编辑:rootadmin

SQL增加了4个关于队计算的函数:分别是ROW_NUMBER,RANK,DENSE_RANK,NTILE.

注意:这些函数只能出现在SELECT和ORDER BY的查询中。语法如下:

ranking_function over([partition by col_list] order by col_list)

ROW_NUMBER:在排序的基础上对所有列进行连续的数字进行标识。

执行顺序:为了计算列值,优化器首先需要把数据在分区列上进行排序,然后在对这些列进行编码。

SQL之前的技术处理列计算

1.(SET-BASED)

在SQL之前,已经有了简单的对列集合的计算,使用unique partitioning + sort 组合。

比如,你可以使用下面的技术:

SELECT empid, (SELECT COUNT(*) FROM dbo.Sales AS S2 WHERE S2.empid <= S1.empid) AS rownumFROM dbo.Sales AS S1ORDER BY empid;

这是非常简单的,但也是非常慢的。。。

如果需要组合条件产生列数(即非唯一列的组合排序和断路器),可以这样做:

SELECT empid, qty, (SELECT COUNT(*) FROM dbo.Sales AS S2 WHERE S2.qty < S1.qty OR (S2.qty = S1.qty AND S2.empid <= S1.empid)) AS rownumFROM dbo.Sales AS S1ORDER BY qty, empid;

当然还有很多方法,比如用游标,就不写例子了。

2.(IDENTITY-Based Solution)

SELECT empid, qty, IDENTITY(int, 1, 1) AS rnINTO #SalesRN FROM dbo.Sales;SELECT * FROM #SalesRN;DROP TABLE #SalesRN;

推荐整理分享SqlServer 2005 T-SQL Query 学习笔记(2),希望有所帮助,仅作参考,欢迎阅读内容。

SqlServer 2005 T-SQL Query 学习笔记(2)

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

SqlServer T-SQL Query 学习笔记(3) ADHOCPAGING:就是指用页面的序号和页面的大小请求一个单独的页面。下面是例子。DECLARE@pagesizeASINT,@pagenumASINT;SET@pagesize=5;SET@pagenum=2;WITHSalesCTEAS(SELECTROW_NUM

SqlServer T-SQL Query 学习笔记(4) 比如,我要建立一个1,,行的数字表:CREATETABLEdbo.Nums(nINTNOTNULLPRIMARYKEY);DECLARE@maxASINT,@rcASINT;SET@max=;SET@rc=1;INSERTINTONumsVALUES(1);WHILE@rc*2=@maxBEGININSE

SQLserver 文件和文件组的作用说明 1、文件和文件组的含义与关系每个数据库有一个主数据文件.和若干个从文件。文件是数据库的物理体现。文件组可以包括分布在多个逻辑分区的文件,

标签: SqlServer 2005 T-SQL Query 学习笔记(2)

本文链接地址:https://www.jiuchutong.com/biancheng/319297.html 转载请保留说明!

上一篇:SqlServer 2005 T-SQL Query 学习笔记(1)

下一篇:SqlServer 2005 T-SQL Query 学习笔记(3)

  • 印花税购销合同计税依据70%
  • 研发人员的社保也要进入研发费用吗
  • 营业外收入在所得税表中填入哪个科目
  • 结转损益管理费用在借方
  • 行政事业单位暂付款无法收回该怎么处理
  • 融资的方式有哪两种类型
  • 库存商品进项税额转出分录怎么写
  • 工程预付款是否监管
  • 奖金做预发年底结算缴税怎么做?
  • 增值税税率调整时间17变16
  • 其他应收款转入实收资本
  • 待摊费用的金额
  • 怎么去税务局申报个税
  • 资本公积可以怎么处理掉
  • 分期收款计提销项税怎么算
  • 银行手续费填在汇算清缴的哪个表
  • 腾讯电脑管家中的软件市场怎么拖到桌面
  • 松木山在哪
  • 发票已付款未认账怎么办
  • 进程antimalware service
  • el-tree方法
  • 合伙企业分配股票给合伙人
  • 股权激励的账务如何处理
  • php获取给定日期函数
  • php正则函数内容匹配
  • php preg_match
  • php和mysql关系
  • 货物及劳务包括哪些内容
  • laravel event
  • 银行流水要去哪里打
  • 一般纳税人购进小规模纳税人的货物
  • 凭样品销售
  • java变量初始化的两种方式
  • 公司法人和经理的区别
  • 出口退税转内销还是转免税好
  • 高速费会计分录怎么写
  • 衡量税收负担通常用()
  • 制作费开票属于什么编码类型
  • 应付帐款借方余额,但对方公司己注销
  • 成本核算分摊方法总结
  • 收到自然人税务申报短信
  • 生产设备改扩建会计分录
  • 个体工商户需要给员工交社保吗
  • 向投资者支付的股息
  • 印花税减免税优惠政策2019
  • 固定制造费用需要逐项进行预计通常与本期产量无关
  • 购进材料入库,其价税款通过银行支付
  • 债务重组的会计例题
  • 企业所得税汇算清缴时间
  • 企业所得税虚报成本多少属于犯罪
  • 小规模红冲发票收入正数税额负数
  • 无票收入怎么报增值税
  • mysql索引方式有哪些
  • sql合并字段
  • win7桌面库图标怎么删除
  • ubuntu虚拟机怎么联网
  • 服务器centos版本选择
  • 两种方法解决一半模型的问题
  • win7搜索选项
  • 安装yum的命令
  • win1020h2版本是正式版吗
  • win10剪贴板怎么调出来
  • linux哪些方法可以查看命令的详细信息
  • Windows 8中Hyper-V虚拟机操作应用的具体步骤
  • 怎么看清水印
  • win7防火墙在哪设置
  • Android使用领域
  • bat运行完后不退出
  • 进入dos命令行
  • jQuery插件库
  • js跨域请求的三种方法
  • jquery.validate[.unobtrusive]和Bootstrap实现tooltip错误提示问题分析
  • jQuery ready()和onload的加载耗时分析
  • javascript怎么学
  • 安卓listview添加数据
  • 北京市网上税务局(自然人版)
  • 重庆市电子税务局电话
  • 税控机怎么开发票
  • 南京政务服务中心
  • 什么发票可以抵税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设