无法将“json”extract_path_text(Redshift)与sqlalchemy一起使用?

2024-10-02 18:20:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要运行一个SQL(Redshift)查询,目前我正在使用jupyter/ipython笔记本。我有sqlalchemy红移。在

from sqlalchemy import create_engine, text
engine_string = databasepwrd.redshiftconnection()
engine = create_engine(engine_string)
from pandas.io import sql

def run_query(sequalese):
    '''returns a dataframe given a string SQL query'''
    sql_query = text(sequalese)
    df = sql.read_sql(sql_query,engine )
    return df

run_query("""
SELECT deviceid, json_extract_path_text({extra_ctx, 'skip_login'})
FROM table
LIMIT 10""")

其中“extra_ctx”是redshift表中包含json字符串的列。在

我知道我的查询是有效的,因为当我直接通过sqlworkbench查询数据库时,它就会运行。当我试图在笔记本上运行它时,我收到错误:

^{pr2}$

<;--还有一点^。在

你知道是什么导致了这个问题吗?谢谢你的帮助。在


Tags: runtextfromimportjsondfsqlstring
1条回答
网友
1楼 · 发布于 2024-10-02 18:20:16

语法错误。{不需要。不会在sqlworkbench中引发错误,但在运行python时会引发错误。在

SELECT deviceid, json_extract_path_text(extra_ctx, 'skip_login')
FROM table
LIMIT 10

干得不错。谢谢,伊莉亚

相关问题 更多 >