使用pyodps运行SQL语句,在测试环境中能执行出结果,在生产环境反复执行就是没有结果,无奈求助dataworks大佬,这才发现是hive兼容模式的问题,导致日期解析出错!!!
opds添加代码
--打开MaxCompute 2.0数据类型
set odps.sql.type.system.odps2=true;
--打开Decimal 2.0数据类型
set odps.sql.decimal.odps2=true;
--Hive兼容模式
set odps.sql.hive.compatible=true;
pyodps 修改代码
o.execute_sql(sql_inc,hints={'odps.sql.type.system.odps2':'true','odps.sql.decimal.odps2':'true','odps.sql.hive.compatible':'true'})
o.execute_sql(sql_all,hints={'odps.sql.type.system.odps2':'true','odps.sql.decimal.odps2':'true','odps.sql.hive.compatible':'true'})