c网站建设,seo计费,西安百度公司地址介绍,手机怎么做软件开发一、Window函数
语法#xff1a;
Window ( 起始位置,起始位置类型,结束位置,结束位置类型, [关系], [OrderBy],[空白],[PartitionBy] )
含义#xff1a;
对指定分区#xff08;PartitioinBy)中的行#xff08;关系表
Window ( 起始位置,起始位置类型,结束位置,结束位置类型, [关系], [OrderBy],[空白],[PartitionBy] )
含义
对指定分区PartitioinBy)中的行关系表按指定的列进行排序OrderBy后根据起始位置和结束位置定位多行。
参数 参数 属性 描述 起始位置 ABS时1代表第1行-1代表最后1行REL时-1代表上一行0代表当前行1代表下一行 起始位置类型 可选 ABS绝对和 REL相对默认为 REL 结束位置 ABS时1代表第1行-1代表最后1行REL时-1代表上一行0代表当前行1代表下一行 结束位置类型 可选 ABS绝对和 REL相对默认为 REL 关系表 可选 表表达式要包含第3、第5个参数中用的列 OrderBy 可选 排序依据如省略第二个参数须指定 空白 可选 保留的参数位置暂时无用 PartitionBy 可选 分区依据如果省略视同只有一个分区
备注
OrderBy、PartitionBy中出现的列需要先在“关系表”中引用。 二、实例
已知表日期表和表销售记录2020年~2022年
表日期表 表销售记录2020年~2022年 生成月度销售金额报表 1、新建度量值销售金额 SUM(销售记录[金额])
2、新建度量值window(-1REL,1REL) CALCULATE(度量值表[销售金额],WINDOW(-1,REL,1,REL,ALLSELECTED(日期表[年],日期表[月]),ORDERBY(日期表[月],ASC),,PARTITIONBY(日期表[年])))
解析以‘日期表’[年]作为分区按‘日期表’[月]进行升序排列然后定位当前行上一行至当前行下一行-1,REL,1,REL
3、新建度量值window(1ABS,-1ABS) CALCULATE(度量值表[销售金额],WINDOW(1ABS-1ABS,ALLSELECTED(日期表[年],日期表[月]),ORDERBY(日期表[月],ASC),,PARTITIONBY(日期表[年])))
解析以‘日期表’[年]作为分区按‘日期表’[月]进行升序排列然后定位第一行至最后一行1,ABS,-1,ABS
4、新建度量值window(0REL,-1ABS) CALCULATE(度量值表[销售金额],WINDOW(0,REL,-1,ABS,ALLSELECTED(日期表[年],日期表[月]),ORDERBY(日期表[月],ASC),,PARTITIONBY(日期表[年])))
解析以‘日期表’[年]作为分区按‘日期表’[月]进行升序排列然后定位当前行至最后一行0,REL,-1,ABS
5、新建度量值window(1ABS,0REL) CALCULATE(度量值表[销售金额],WINDOW(1,ABS,0,REL,ALLSELECTED(日期表[年],日期表[月]),ORDERBY(日期表[月],ASC),,PARTITIONBY(日期表[年])))
解析以‘日期表’[年]作为分区按‘日期表’[月]进行升序排列然后定位第一行至当前行1,ABS,0,REL