代码如下:
sql_str = '''select * from table_name where ds='${bdp.system.bizdate}' limit 100'''
instance = o.execute_sql(sql_str)
with instance.open_reader() as reader:
print('count: ',reader.count)
输出:count: 0
但在IDE界面中输入:select * from table_name where ds='${bdp.system.bizdate}' limit 100
是可以正确返回数据的
另外如果在代码中直接使用日期: sql_str = '''select * from table_name where ds='20181111' limit 100'''
也是可以正确返回数据的。
可见在代码中没有正确解析系统参数bdp.system.bizdate
请问有么有哪位大虾碰到过类似问题,该如何解决呢?谢谢!
pyodps遇见$问题多多,不知道是不是有什么同意解决的方法,同样的问题在遇见接收上游参数的时候也会出现,,如果只是bdp.system.bizdate的话,,我是用to_char(dateadd(getdate(),-1,'dd'),'yyyymmdd')替代获取的,正常情况下应该没啥问题
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。