Dataphin中使用SQL任务union all两个分区总数据量不等于两个分区数据量的和
问题描述
Dataphin中使用SQL任务union all两个分区,数据量不等于两个分区数据量的和。代码如下:
select * from s_item_view_d where ds='${bizdate}'-1
union all
select * from s_item_view_d where ds='${bizdate}';
问题原因
因为${bizdate}-1在计算的时候默认会转为数字进行计算,导致计算出来的日期是有问题的,比如月初计算后变成00之后导致分区和实际不符合。
解决方案
需要通过to_date将bizdate的字符串转成日期减一天再转成字符串,如下所示:
适用于
- Dataphin
- 数据处理