用于 psycopg2 连接的 Python 中长查询的 SQL 格式示例

hse*_*bie 1 python sql postgresql psycopg2

通常我使用 Pandas 来查看和处理数据,这是我所熟悉的。

如果我使用 psycopg2 模块从 postgres 数据库中提取数据,我会将 SQL 查询放在一个 python 文件中,但如果它是一个复杂的查询,它会在远离屏幕的一行上扩展。

有没有办法在python中使用换行符获取sql查询?即某种特殊字符包装器使python忽略空格?

这个

sql = SELECT devices.id, devices.names, devices.addresses, devices.charging, devices.covered, record_temperatures.time
FROM devices
WHERE devices.imei like '%0444258';

df = pd.read_sql_query(sql, con=conn) 
Run Code Online (Sandbox Code Playgroud)

不是这个

sql = SELECT devices.id, devices.names, devices.addresses, devices.charging, devices.covered, record_temperatures.time FROM devices WHERE devices.imei like '%0444258';

df = pd.read_sql_query(sql, con=conn) 
Run Code Online (Sandbox Code Playgroud)

Fra*_*ois 5

您可以使用反斜杠如下:

sql = "SELECT devices.id, devices.names, devices.addresses,\
devices.charging, devices.covered, record_temperatures.time \
FROM devices \
WHERE devices.imei like '%0444258'";
Run Code Online (Sandbox Code Playgroud)

或者您也可以使用三重引号:

sql = """SELECT devices.id, devices.names, devices.addresses,  
devices.charging, devices.covered, record_temperatures.time
FROM devices
WHERE devices.imei like '%0444258';
"""
Run Code Online (Sandbox Code Playgroud)