【发布时间】:2018-05-31 04:24:49
【问题描述】:
我已经运行了一个查询,该查询使用 python 在 postgresql 中内部连接两个临时表以查找不同的无线电参数。我还有 csv 文件,它增加了表名和列名。我使用 pandas 读取 csv 并多次查询 postgreqsql 并将结果插入到单元格调用 comparsion.cccheck_table_cell 中。
这是我的代码:
from ftplib import FTP
import os
import csv
import psycopg2
import time
from datetime import datetime, timedelta
import pandas as pd
today=datetime.strftime(datetime.now(), '%Y-%m-%d')
yesterday=datetime.strftime(datetime.now() - timedelta(2), '%Y-
%m-%d')
i=0
abc=[]
conn = psycopg2.connect(
host="xxx",
database="parameter",
user="xxx",
password="xxx",
port="xxx"
)
abc =pd.read_csv(
'xxxx/create_comp/164/cell_table.csv',
header=None, index_col=False
)
table="insert into comparsion.cccheck_table_cell SELECT a.date as
date,a.ne_name as ne_name,a.local_cell_id,'"+abc.iloc[i,1]+"' as
parameter,a." + abc.iloc[i,1] + " as today_parameter,\
b." + abc.iloc[i,1] + " as yesterday_parameter FROM (select * from
radio_parameter." + abc.iloc[i,0] + " \
where date='" + today + "')a INNER JOIN (select * from
radio_parameter." + abc.iloc[i,0] + " where date='" + yesterday +
"')b ON a.ne_name = b.ne_name and a.local_cell_id=b.local_cell_id WHERE
a." + abc.iloc[i,1] + " != b." + abc.iloc[i,1] + ";"
print(table)
cursor = conn.cursor()
cursor.execute(table)
cursor.close()
conn.commit()
conn.close()
print('done_1')
为了解决问题,我在执行一次时打印了查询。但是如果我内部连接两个临时表,我发现查询没有响应并且没有发现错误。
有没有人在执行没有响应但没有错误的查询时有这些经验?问题与服务器或数据库加载问题有关吗?(我的数据库大约 24GB)
【问题讨论】:
-
查询是什么样的?
标签: python sql postgresql python-2.7