这个逻辑,写的很对。明白了这个意思。
over partition by 前面一定要用汇总函数。groub by 就可以不用。本质都是汇总
SELECT a.* ,SUM(a.audit_status) OVER(PARTITION BY a.sign_type ) AS sign_type FROM jz_daojia.f_jz_order_common a WHERE dt = '${bdp.system.bizdate}' LIMIT 1000
https://blog.csdn.net/dwt1415403329/article/details/87835383
理解 row_number 和 partition by 使用方法。
以及时间使用 ORDER BY allocation_time,没有倒序就是正常的时间。
时间递增性。2018到2019年。就是距离现在最晚的时候。
ORDER BY allocation_time DESC 。就是距离现在最近的。
SELECT * FROM ( SELECT a.* ,ROW_NUMBER() OVER(PARTITION BY clue_id ORDER BY allocation_time) AS asc_number FROM o_jz_clue_t_allocation_record a WHERE dt = '${bdp.system.bizdate}' ) a WHERE a.asc_number > 2 LIMIT 100