MaxCompute5个窗口函数限制

场景:想选出每个客户前10个top购买类目,再pivot成10个列(或者合并成逗号隔开的一个值)

遭遇: “maximum 5 window functions allowed in the select statement of a sql ”

反了一下MaxCompute使用文档

  • 一个SELECT中最多允许5个窗口函数

记得有篇文章,绕过了这个限制,好像是用union之类,找不到了。

好吧,自己决定按unique key,把表查询两遍(各自配5个window function,一个管1-5,另一个表管6-10),再join回来,这样可以多一倍函数。

分享给着急用的人,也期待官方有更好的支持方式;

文章转载自xueyuan

更多问题欢迎加入MaxCompute钉钉群讨论

时间: 2024-10-14 06:12:43

MaxCompute5个窗口函数限制的相关文章

阿里巴巴大数据计算平台MaxCompute(原名ODPS)全套攻略(持续更新20171122)

  概况介绍 大数据计算服务(MaxCompute,原名ODPS,产品地址:https://www.aliyun.com/product/odps)是一种快速.完全托管的TB/PB级数据仓库解决方案.MaxCompute向用户提供了完善的数据导入方案以及多种经典的分布式计算模型,能够更快速的解决用户海量数据计算问题,有效降低企业成本,并保障数据安全.本文收录了大量的MaxCompute产品介绍.技术介绍,帮助您快速了解MaxCompute/ODPS. MaxCompute 2.0:阿里巴巴的大数

MaxCompute文章索引

概况介绍: MaxCompute 2.0 生态开放之路及最新发展 10年老兵带你看尽MaxCompute大数据运算挑战与实践 一分钟了解阿里云产品:大数据计算服务MaxCompute概述 数加平台如何通过Serverless 架构实现普惠大数据 淘宝大数据之路 应用案例: 日志分析: 云数据,大计算-海量日志数据分析与应用 <海量日志数据分析与应用>之数据采集 <海量日志数据分析与应用>之社交数据分析:好友推荐 <海量日志数据分析与应用>之报表分析与展现 <海量日

深度探讨SQL Server 2005 窗口函数

SQL Server 2005中的窗口函数(window function)与微软Windows无关:相反,它们建立数据窗口.窗口函数帮助你迅速查看不同级别的聚合,通过它可以非常方便地恢复累计总数.移动平均值.以及执行其它计算. 一个SQL Server窗口是对函数应用的行的分区.你使用OVER(-)子句指定一个窗口,你可以对任何一个聚合函数应用这个子句.通常来说,你把数据分成几个组,但OVER()的自变量可选. USE AdventureWorks2;GOSELECT SalesOrderID

SQL Server窗口函数简介

简介 SQL Server 2012之后对窗口函数进行了极大的加强,但对于很多开发人员来说,对窗口函数却不甚了解,导致了这 样强大的功能被浪费,因此本篇文章主要谈一谈SQL Server中窗口函数的概念. 什么是窗口函数 窗口函数,也可以被称为OLAP函数或分析函数.理解窗口函数可以从理解聚合函数开始,我们知道聚合函数的概念, 就是将某列多行中的值按照聚合规则合并为一行,比如说Sum.AVG等等,简单的概念如图1所示. 图1.聚合函数 因此,通常来说,聚合后的行数都要小于聚合前的行数.而对于窗口

深度探讨SQL Server 2005窗口函数

SQL Server 2005中的窗口函数(window function)与微软Windows无关:相反,它们建立数据窗口. 窗口函数帮助你迅速查看不同级别的聚合,通过它可以非常方便地恢复累计总数.移动平均值.以及执行 其它计算. 一个SQL Server窗口是对函数应用的行的分区.你使用OVER(-)子句指定一个窗口,你可以对 任何一个聚合函数应用这个子句.通常来说,你把数据分成几个组,但OVER()的自变量可选. USE AdventureWorks2; GO SELECT SalesOr

由partition看窗口函数

最近要完成一个项目,有一个查询可难住了笔者,无论是子查询还是分组,都没弄出来, 还是基础知识不行啊.不过呢,可以查资料,最后用一个窗口函数解决了问题.由于开始的 数据库是Access,后来笔者导成SQL Server的,一下子明白了很多. 数据库类似是这个样子滴: Employee表的字段: empId,englishName,depId Department表的字段: depId,deptName 需求是:查找出Department表的所有字段,但是在前面显示出该部门的人数. 就是这样: pe

sqlserver使用窗口函数实现分页

  sqlserver使用窗口函数实现分页 ALTER PROC [dbo].[usp_GetStuPage] @pageIndex INT =1,--当前页码 @pageSize INT =10,--页容量 @pageCount int OUTPUT--输出总页数 AS BEGIN SELECT @pageCount=CEILING((COUNT(id)*1.0)/@pageSize) FROM StudentsInfo SELECT * FROM ( SELECT *,ROW_NUMBER(

《T-SQL性能调优秘笈——基于SQL Server 2012 窗口函数》——1.1 窗口函数的背景

1.1 窗口函数的背景 T-SQL性能调优秘笈--基于SQL Server 2012 窗口函数 在开始学习具体的窗口函数之前,先了解其背景和内涵,会对后续的学习有所帮助.本节先谈谈窗口函数的背景,解释基于集合方式和基于游标/迭代方式进行查询的不同,以及窗口函数如何对二者的差异进行弥补.最后,本节也提到了窗口函数的替代方法,以及为什么窗口函数会优于其替代方法.注意,尽管窗口函数能非常高效地解决很多问题,但在某些案例中,替代方法会好于窗口函数.第4章会具体谈论对窗口函数的优化,解释在什么情况下,计算

函数分类,HIVE CLI命令,简单函数,聚合函数,集合函数,特殊函数(窗口函数,分析函数,混合函数,UDTF),常用函数Demo

1.1. 函数分类 1.2. HIVE CLI命令 显示当前会话有多少函数可用 SHOW FUNCTIONS; 显示函数的描述信息 DESC FUNCTION concat; 显示函数的扩展描述信息 DESC FUNCTION EXTENDED concat; 1.3. 简单函数 函数的计算粒度为单条记录. 关系运算 数学运算 逻辑运算 数值计算 类型转换 日期函数 条件函数 字符串函数 统计函数 1.4. 聚合函数 函数处理的数据粒度为多条记录. sum()-求和 count()-求数据量 a