Python 如果记录不存在,Postgresql select命令将变慢

Python 如果记录不存在,Postgresql select命令将变慢,python,psycopg2,postgresql-9.2,Python,Psycopg2,Postgresql 9.2,我有下面的select命令。这些表格有大约200万条记录。我要找的唱片不存在。但是select查询速度很慢。我如何加快速度?其他人也有这个问题,但这种情况下的解决方案并不适用 a1_value = 'AA' a2_value = "1" cur.execute("SELECT pk, a1, a2 FROM db_name WHERE a1 = %s AND a2 = %s LIMIT 1", (a1_value, a2_value)) 答案是把指数放在a1和a2上。例如: cur.execu

我有下面的select命令。这些表格有大约200万条记录。我要找的唱片不存在。但是select查询速度很慢。我如何加快速度?其他人也有这个问题,但这种情况下的解决方案并不适用

a1_value = 'AA'
a2_value = "1"
cur.execute("SELECT pk, a1, a2 FROM db_name WHERE a1 = %s AND a2 = %s LIMIT 1", (a1_value, a2_value))

答案是把指数放在a1和a2上。例如: cur.executer在数据库名称a1、a2上创建索引标题
cur.execute从db_name中选择pk、a1、a2,其中a1=%s和a2=%s限制1、a1_值、a2_值

将索引放在a1和a2上抱歉,我不熟悉这一点。什么意思?您能给出一个代码示例吗?我没有使用postgresql,但您必须在where子句中使用的列上创建索引。这将大大加快速度,请确保查看上面链接底部的示例