You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python从Snowflake表取值存变量并拼接文件名问题求助

问题解决方法
  • 问题根源:cs.execute()执行SQL后返回的是Snowflake游标对象,不是查询出来的实际数据,所以你看到的是游标对象的内存地址。

  • 修正步骤:

    1. 修正SQL语句的引号错误:三重单引号包裹的SQL里,单引号不需要转义,原语句里的=\ 'HA'是多余的转义,改成= 'HA'即可。
    2. 执行查询后,调用游标对象的fetchone()方法获取单行结果(你的查询只会返回一条数据),再提取其中的CONFIG_VALUE值。
    3. 将获取到的路径和目标文件名拼接,建议用os.path.join适配不同系统的路径分隔符,避免拼接出错。
  • 修正后的完整代码:

# 修正SQL语句,移除多余转义
HA_file_path = '''SELECT CONFIG_VALUE FROM CONFIGURATIONS WHERE CONFIG_NAME = 'HA' '''
# 执行查询
cs.execute(HA_file_path)
# 获取单行结果,提取单列值
file_dir = cs.fetchone()[0]
# 拼接完整文件路径,用os.path.join更规范
import os
full_file_path = os.path.join(file_dir, "product_yyyymmdd.csv")
  • 补充说明:
    • 如果查询可能返回多条数据,改用fetchall()获取所有结果后循环处理。
    • 直接字符串拼接时要注意路径末尾是否有/,比如f"{file_dir}/product_yyyymmdd.csv",但os.path.join会自动处理分隔符问题,更推荐使用。

内容的提问来源于stack exchange,提问作者digital

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 13:32:02