GaussDB(DWS)迁移实践丨row_number输出结果不一致-每日速讯
时间:2023-05-29 16:50:35 来源:博客园
摘要:迁移前后结果集row_number字段值前后不一致,前在DWS上运行不一致。
本文分享自华为云社区《GaussDB(DWS)迁移 - oracle兼容 --row_number输出结果不一致》,作者:譡里个檔 。
【问题表现】迁移前后结果集row_number字段值前后不一致,前在DWS上运行不一致。
【问题分析】这种问题大部分都是因为PARTITION BY 列 + ORDER BY 列组合起来不唯一,导致row_number()开窗函数结果集不稳定。
【资料图】
【解决方案】如果不关注PARTITION BY 列 + ORDER BY 列组合值一样的记录的排序,那么可以使用函数rank()代替函数row_number(),二者的区别请戳这里;如果关注PARTITION BY 列 + ORDER BY 列组合值一样的记录的排序,那么需要增 ORDER BY 列,以保证同一个组内所有记录的唯一性。
【案例展示】某客户反馈进行Orale迁移前,如下SQL结果集稳定;迁移后DWS运行结果和oracle不一致,且DWS本身运行结果不稳定
SELECT no_tax_ind_amt, row_number() OVER(PARTITION BY s.actual_arrv_period_id, s.transp_demand_no ORDER BY s.transp_demand_no DESC) pck_rnFROM fin_dwl_cbchnl.dwl_cbg_cst_tms_freigh_expen_f sLEFT JOIN dwrdim_dw1.dwr_dim_company_d c ON s.ship_company_key = c.company_keyLEFT JOIN dwrdim_dw1.dwr_dim_supplier_d d ON s.supplier_key = d.supplier_keyWHERE actual_arrv_period_id = 202109AND s.transp_demand_no="0FF7640001270MCHN01H";
前后两次执行结果
1)第一次执行
2)第二次执行
问题定位分析方位为执行如下语句
SELECT no_tax_ind_amt, s.actual_arrv_period_id, s.transp_demand_no, s.transp_demand_no, -- PARTITION BY 列 + ORDER BY 列 row_number() OVER(PARTITION BY s.actual_arrv_period_id, s.transp_demand_no ORDER BY s.transp_demand_no DESC) pck_rn, rank() OVER(PARTITION BY s.actual_arrv_period_id, s.transp_demand_no ORDER BY s.transp_demand_no DESC) pck_rkFROM fin_dwl_cbchnl.dwl_cbg_cst_tms_freigh_expen_f sLEFT JOIN dwrdim_dw1.dwr_dim_company_d c ON s.ship_company_key = c.company_keyLEFT JOIN dwrdim_dw1.dwr_dim_supplier_d d ON s.supplier_key = d.supplier_keyWHERE actual_arrv_period_id = 202109AND s.transp_demand_no="0FF7640001270MCHN01H";
可以看出相同的开窗逻辑下rank()值都1,而且所有记录中s.actual_arrv_period_id, s.transp_demand_no, s.transp_demand_no(即PARTITION BY 列 + ORDER BY 列)的值都是一样的
点击关注,第一时间了解华为云新鲜技术~
标签:
最新文章推荐
- 市值超500亿元 兴发集团二季度净利预增10%-16%
- 提前结募!首单清洁能源公募REITs鹏华深圳能源REIT正式发行
- 郑州:多措并举促消费、扩投资、活出口 全力以赴夺取首季开门红
- 中央一号文件再聚焦乡村振兴:农村物流“最后一公里”要来了
- 券业“入门考试”迎规则修订拟调整成绩管理模式
- 郑州:多措并举促消费、扩投资、活出口 全力以赴夺取首季开门红
- 2025年 濮阳将建成数字经济和信息化发展新高地
- “一张蓝图”打造高校智慧校园“样板间” 中央民族大学这样做
- 江西财经大学“映山红”研究生支教团获第25届江西青年五四奖章
- “职等你来就业同行” 百日千万网络招聘行动启动
X 关闭
资讯中心
2022-08-29
2022-08-15
2022-05-20
2021-10-18
X 关闭
热点资讯
-
1
GaussDB(DWS)迁移实践丨row_number输出结果不一致-每日速讯
-
2
编外人员平均月薪:2800元以内!这个地方明确了→_今头条
-
3
世界通讯!3996小游戏大全_3999小游戏
-
4
意大利威尼斯运河出现“荧光绿”,警方已介入调查
-
5
泰达股份(000652):5月29日技术指标出现观望信号-“黑三兵”_今热点
-
6
退休发的独生子女费扣个税吗
-
7
智峪生科斩获第二届光合组织 AI 解决方案大赛“二等奖” 世界时快讯
-
8
焦点报道:智能采矿装备助力深海淘金 深圳强化集成创新,前瞻布局深海矿产资源开发
-
9
山东高质量建设宜居宜业和美乡村
-
10
网上贷款怎样被骗了
-
11
科普图解 | 科技助力我国深海考古取得重大发现 环球聚看点
-
12
四川重庆陕西等地有较强降雨 华南江南等地有高温天气
-
13
我是特种兵蝎子最后下场_我是特种兵蝎子|焦点日报
-
14
埃及宣布发现两座木乃伊作坊
-
15
天天要闻:瘦脸针的危害有什么副作用(瘦脸针的危害)
-
16
世界报道:英超收官|莱斯特vs西汉姆首发:瓦尔迪替补!蓝狐取胜才可能保级
-
17
提车注意检查事项(提车注意事项以及验车的步骤汽车之家)
-
18
热资讯!多项税收数据反映经济运行向好
-
19
全球头条:日照:企业按下“绿色”产业“快进键”
-
20
头条焦点:4-2!孙颖莎复仇陈梦,世乒赛双冠王,国乒新一姐诞生,22岁称王