首页 > 其他分享 >MPP库使用row_number()取值错误问题

MPP库使用row_number()取值错误问题

时间:2024-08-15 09:16:54浏览次数:7  
标签:pid number num MPP time select row

问题

MPP库使用row_number() 进行排序后,取指定序号值时,是随机取值了,并没有取指定序号的数据

with t1 as(
	select 
        row_number() over(partition by pid order by create_time desc) as num, * 
    from t3
)
select * from t1 where num = 1

原因

暂时还没了解,如果有哪位好心的大佬知道可以评论一下。

解决办法

使用group by 的方式把需要的字段全部取出,之后再取指定序号的数据,如下示例:

with t1 as(
	select 
        row_number() over(partition by pid order by create_time desc) as num, id, pid, create_time, update_time 
    from t3
    group by id, pid, create_time, update_time
)
select * from t1 where num = 1

如果有哪位好心的大佬知道还有其它方法可以评论一下,让更多人知道。

标签:pid,number,num,MPP,time,select,row
From: https://www.cnblogs.com/lucky-jun/p/18360200

相关文章

  • [CodeForces] F. Color Rows and Columns
    ProblemLink Basedoninitialobservation,itseemsthatgreedilypickthesmallestrow/columnlengthworks.Butthelastexampletestcaseoutputs35whilegreedygives36.  Howyoushouldgofromthere:1.checkifyourgreedyimplementationisco......
  • gorm插入报错Error 1292 (22007): Incorrect datetime value: ‘0000-00-00‘ for col
    在MySQL中,'0000-00-0000:00:00'不是一个合法的DATETIME值。从MySQL5.7.5开始,默认情况下不允许插入零日期或零时间值到DATETIME或TIMESTAMP列,除非明确允许。在gorm中,如果没有为DATETIME类型的字段提供具体的时间值,MySQL就会尝试插入默认值'0000-00-0000:00:00',从而导致这个错......
  • AT_arc181_c [ARC181C] Row and Column Order
    思路简单。首先我们可以考虑按着\(p\)数组的顺序遍历。接着因为题目要求字典序最小,我们可以将\(q\)数组倒着来讲后面\(i\)个标记为\(1\),此时我们保证了\(p\)数组中是字典序从小到大的,又保证了\(q\)数组中是按照字典序排序的。代码#include<bits/stdc++.h>usingn......
  • AGC182 C - Sum of Number of Divisors of Product
    题目大意:求长度为1,2,...N,的好序列因数个数。好序列满足每个元素\(1\leqx\leqM\)\(N\leq1e18,M\leq16\)很容易想到维护所有好序列质因数的指数+1的乘积。\(\prodb_i,1\leqi\leq6\).考虑每个数对这个乘积的影响。假设我们只有2,3,5这三个质数,序列末端添加15,......
  • ProTable rowSelection 支持多选
    前言:第一次用到多选,gpt非常好用,比之前网页方便太多。 importProTablefrom'@ant-design/pro-table';importReact,{useState}from'react';constTableWithRowSelection=()=>{//使用useState钩子来保存选中的行const[selectedRows,setSelectedRows]......
  • 引发全球IT故障后 CrowdStrike在Def Con大会上接受“史诗级失败“奖
    CrowdStrike公司的软件更新引发了全球性的IT崩溃,而就在几周之后,CrowdStrike公司并没有回避聚光灯。事实上,该公司总裁迈克尔-森托纳斯(MichaelSentonas)甚至在Pwnie奖颁奖典礼上上台接受了"最史诗失败奖"。颁奖仪式在DefCon大会上举行,紧接在黑帽大会之后,CrowdStrike......
  • c += c 与 c = c + number 的异同
    for(inti=0;i<s.length();i++){char[]chars=s.toCharArray();charc=chars[i];c=c+32;//不合法c+=32;//合法byte[]bytes=s.getBytes();byteaByte=bytes[i];......
  • K11475 丑数[Ugly Numbers,UVa136](set解法)
    题目描述丑数是指不能被2,3,5以外的其他素数整除的数。然后把丑数从小到大排列起来,前11个数如下:1,2,3,4,5,6,8,9,10,12,15,...编写一个程序,计算出第1500个丑数并输出。输入格式无输出格式输出为一行计算出的第1500个丑数替换下面句子中的‘<number>’,再输出。The1500'thuglynum......
  • Leetcode | 202 Happy Number
    分析在快乐数的题意上,通常情况下我们都会去顺着题目的意思去寻找最终结果是否为1,而后面的另一句话很有启示意义:"也可能是无限循环,但始终变不到1",那么为什么不会是无限不循环呢?证明范围限制:对于一个(d)位数的正整数(n),其最大值为99d=Max位数减少:每次计算之后,数字位数d要么减......
  • Codeforces 165E Compatible Numbers 题解
    思路高维前缀和高维前缀和把数的二进制看成一个集合,二进制的每一位为\(1\)为全集\(V\)。根据题目描述,若两数\(a,b\)相容,则\(a\operatorname{and}b=0\),容易发现,\(b\in\complement_{V}a\),所以我们只需要用高维前缀和处理出\(\complement_{V}a\)的一个元素即可。......