【问题标题】:Print SQL execution plan with python's module psycopg2使用 python 的模块 psycopg2 打印 SQL 执行计划
【发布时间】:2019-02-18 13:30:02
【问题描述】:

在使用 python 和 psycopg2 模块时,有什么方法可以打印 SQL 执行计划中的信息以在终端中查看?

我尝试了以下操作,但终端中没有显示任何内容:

cur.execute(cur.mogrify('explain analyze ' + sql_query, vals)

并使用print 返回None

print(cur.execute(cur.mogrify('explain analyze ' + sql_query, vals))

来自this question,我也尝试了以下方法,但也没有用:

cur.execute("LOAD 'auto_explain';")
cur.execute("SET auto_explain.log_min_duration = {min_ms};".format(min_ms=0))
cur.execute(sql_query, vals)

【问题讨论】:

    标签: python-3.x psycopg2 sql-execution-plan explain


    【解决方案1】:

    在发布问题后,我想出了答案。其实很基本。我只需要获取它,就像使用任何其他 SELECT 命令一样。

    如果其他人有同样的问题:

    cur.execute(cur.mogrify('explain analyze ' + sql_query, vals))
    analyze_fetched = cur.fetchall()
    print(analyze_fetched)
    

    【讨论】:

      猜你喜欢
      • 2013-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-26
      • 1970-01-01
      • 1970-01-01
      • 2012-02-18
      • 1970-01-01
      相关资源
      最近更新 更多