• sqlserver2005关键字之apply


    昨天提到top 今天先看看apply ,然后结合这两个关键字,看看能解决哪些问题。

    1)apply的逻辑处理阶段:(1)把右表表达式应用到坐表输入行;(2)添加外部行;如果cross apply 那么只有步骤(1),如果是outer apply则有(1)、(2)两个阶段

    2)apply可以将外部查询的列引用作为参数传递给表值函数。

    可以解决现实的问题:

    1)每组的top n ,可以分别查询出每组的前几名;

    2)匹配当前值和前一个值

    3)随机行 select top (1) from table order by checksum(newid())

    4) 中值 获取表的中值:select ((select max(val) from (select top (50) percent val from table order by val))as m1+(select max(val) from (select top (50) percent val from table order by val))as m1)/2. as median

  • 相关阅读:
    bzoj1066: [SCOI2007]蜥蜴
    bzoj3504: [Cqoi2014]危桥
    bzoj2756: [SCOI2012]奇怪的游戏
    bzoj1570: [JSOI2008]Blue Mary的旅行
    Ultra-QuickSort
    Bin Packing
    Watering Grass
    区间覆盖
    抄书 Copying Books UVa 714
    分馅饼 Pie
  • 原文地址:https://www.cnblogs.com/yupeng/p/1717554.html
Copyright © 2020-2023  润新知