阿里云dataworks中业务流程中问题(odps2)

bigdate形式的数据在odps的2.0版本中无法隐式转换,应将一个参数改为false如下
setproject odps.sql.type.system.odps2=false;
上面的语句应该与insert …table 表名 select …一起使用

例如
setproject odps.sql.type.system.odps2=false;
INSERT OVERWRITE TABLE yhxxgx
SELECT yh.yhbm,yh.xb,yh.nl,yh.xfdj,yh.smdr,yh.llns,yh.xsns
,CASE WHEN(yh.zjllcs+zj.llcs)>10 THEN 1 ELSE 0 END msyz
,(yh.zgllcs+zj.llcs)zgllcs,(yh.zjllcs+zj.llcs)zjllcs
,yh.zgtjcs,(yh.zgtjcgcs+zj.dktjcs)zgtjcgcs
,yh.zjtjcs,(yh.zjtjcgcs+zj.dktjcs)zjtjcgcs
,(yh.zggwcs+zj.gmcs)zggwcs,(yh.zjgwcs+zj.gmcs)zjgwcs
,(yh.zgplcs+zj.plcs)zgplcs,(yh.zjplcs+zj.plcs)zjplcs
FROM yhxx yh
LEFT OUTER JOIN(
SELECT yh.yhbm
,CASE WHEN ll.llcs IS NULL THEN 0 ELSE ll.llcs END llcs
,CASE WHEN dktj.dktjcs IS NULL THEN 0 ELSE dktj.dktjcs END dktjcs
,CASE WHEN gm.gmcs IS NULL THEN 0 ELSE gm.gmcs END gmcs
,CASE WHEN pl.plcs IS NULL THEN 0 ELSE pl.plcs END plcs FROM yhxx yh LEFT
OUTER JOIN(SELECT yhbm,count(1) llcs FROM yhxw WHERE xwbm=‘llsp’
GROUP BY yhbm)ll ON yh.yhbm=ll.yhbm–浏览次数
LEFT OUTER JOIN(SELECT yhbm,count(1) dktjcs FROM yhxw WHERE xwbm=‘dktj’
GROUP BY yhbm)dktj ON yh.yhbm=dktj.yhbm–打开推荐次数
LEFT OUTER JOIN
(SELECT yhbm,count(1) gmcs FROM yhxw WHERE xwbm=‘zfhk’
GROUP BY yhbm)gm ON yh.yhbm=gm.yhbm–支付次数
LEFT OUTER JOIN(SELECT yhbm,count(1) plcs FROM yhxw WHERE xwbm=‘plgm’
GROUP BY yhbm)pl ON yh.yhbm=pl.yhbm–评论次数
)zj ON yh.yhbm=zj.yhbm;

阿里云dataworks中业务流程中问题(odps2)_第1张图片

设置后可以成功执行如下
阿里云dataworks中业务流程中问题(odps2)_第2张图片

在这里插入图片描述

你可能感兴趣的:(大数据,大数据异常处理,数据库,sql,dataworks,阿里云,maxcomputer)