首页 > 解决方案 > SQL Select Query 耗时过长,无法加载

问题描述

我正在尝试使用 python 和 sql 从数据库中检索信息。

目前,其中一个表需要大量时间来查询,实际上是不可加载的。

我怎样才能更有效地加载这些数据?

这是我正在使用的当前代码,

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import psycopg2 as pg
from sqlalchemy import create_engine



#establishing the connection
conn = pg.connect(
   database=POSTGRESQL_DATABASE, user=POSTGRESQL_USER, password=POSTGRESQL_PASSWORD, host=POSTGRESQL_HOST, port=POSTGRESQL_PORT
)

SQL = '''
select sentiments.user_id,
settings.diagnosis,expressions.angry,expressions.disgusted, 
expressions.fearful,expressions.happy,expressions.neutral, 
expressions.sad,expressions.surprised,expressions.created, 
settings.medication,settings.dosage_times,settings.medication_activity_time,
settings.gender,settings.age, sentiments.id, sentiments.sentiment, 
sentiments.magnitude, sentiments.created,
pupil_detections.created,pupil_detections.left_eye_upper,pupil_detections.left_eye_lower,pupil_detections.right_eye_upper
,pupil_detections.right_eye_lower,pupil_detections.left_eye_iris,pupil_detections.right_eye_iris
from sentiments
left join expressions 
on sentiments.user_id = expressions.user_id
left join pupil_detections 
on sentiments.user_id = pupil_detections.user_id
left join settings 
on sentiments.user_id = settings.user_id;

'''

df = pd.read_sql(SQL, con=conn)
df

有没有办法批量请求或类似的东西?巨大的表是瞳孔检测数据库。

除了使用熊猫之外,还有另一种方法可以访问这些数据以对其进行分析吗?

谢谢!

标签: pythonsqlpandasdatabase

解决方案


推荐阅读