【问题标题】:Fetch record countr from a list of tables in Netezza using Python使用 Python 从 Netezza 中的表列表中获取记录计数
【发布时间】:2018-03-05 14:39:59
【问题描述】:

我必须从数据库“TEST_DB”中以 WC_* 开头的表中获取记录计数。

目前我正在使用下面的代码来执行此操作,但是由于许多表中有数十亿条记录,因此花费的时间太长。有什么方法可以提高性能

for item in list_tables[]:    
        total_count_query="select count(*) from TEST_DB.."+item[0]+"
        cur.execute(total_count_query)
        total_record_count=cur.fetchone()[0] 
        print (item[0]," : ",total_record_count)

【问题讨论】:

  • 请修复您的代码 - 这甚至无法远程工作。

标签: python-3.x netezza


【解决方案1】:

系统表“_V_TABLE”中有一个名为 reltuples 的列,它给出了定期收集的所有提供给统计信息的表的计数。您不必计算每个计数

total_count_query="select reltuples from "+database+".._v_table

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-14
    • 1970-01-01
    • 2021-04-26
    • 1970-01-01
    • 1970-01-01
    • 2012-03-08
    • 2020-08-22
    • 2014-04-22
    相关资源
    最近更新 更多