我在一个字符串变量中执行了SQL查询,该变量是通过Python执行的.我面临的问题是我不能在字符串变量中传递‘\n’.使用CHR(13)||CHR(10)时,出现以下错误-

STRING_AGG的参数2必须是文字参数或查询参数

-你在说什么?

sql_stmt="""
    SELECT 
    STRING_AGG(COLUMN_NAME || ' ' || DATA_TYPE || ',' , CHR(13)) AS COLUMN_LIST
    FROM  `prj_name.dataset_name.INFORMATION_SCHEMA.COLUMNS`
"""

然后,我将使用BigQuery通过client.Query(SQL_Stmt)命令执行上面的语句.如果我将‘\n’作为命令传递,则查询将失败,因为字符串将被分成两部分并失败.

有没有人能告诉我,我该怎么处理这种情况?

推荐答案

try 使用sql_stmt=r"""..."""(请注意r)并使用\n而不是CHR(13)

Python相关问答推荐

Python—转换日期:价目表到新行

递归函数修饰器

Python类型提示:对于一个可以迭代的变量,我应该使用什么?

如何在python tkinter中绑定键盘上的另一个回车?

如何在Polars中创建条件增量列?

普洛特利express 发布的人口普查数据失败

将数据从一个单元格保存到Jupyter笔记本中的下一个单元格

大Pandas 每月重新抽样200万只和300万只

使用Python下载pdf url

nameError_C未定义

导入pythoncom如何找到正确的文件?

向NumPy数组添加字符串

带参数约束的类型提示函数*args->;tuple[*args]

使用Python清除Excel中的内容

第一行中的Pandas 按条件替换

我如何在print和pd.Dataframe中返回仅在__post_init__中定义的Python数据类字段/值?

极点中的链接表达式不起作用

生成所有排列:为什么在递归中产生的值不在输出中?

在多级列中,对特定较低级别的类别重新排序

WinError 193%1不是有效的Win32应用程序.AZ二头肌