Netezza - 从 SQL 语句中获取已删除记录的计数

Posted

技术标签:

【中文标题】Netezza - 从 SQL 语句中获取已删除记录的计数【英文标题】:Netezza- getting count of deleted records from a SQL statement 【发布时间】:2015-09-09 08:47:34 【问题描述】:

我正在 Unix 中创建一个脚本,我可以在其中一个接一个地放置多个删除 NZSQL。

但由于每个表的数据量很大,我希望脚本显示每个删除 SQL 的输出,例如删除了多少条记录以及每个删除 SQL 花费了多少时间。

每个 SQL 的输出都可以放在一个文件中,我们可以参考它来查看进度并了解 SQL 执行到哪一步的详细信息。

这将在 Netezza 中完成。

【问题讨论】:

你必须表现出你自己的一些努力。你试过了吗? 【参考方案1】:

DELETE 命令的输出指定了已删除的行数,因此您已经获得了该信息。可以使用“-time”选项调用nzsql,也可以在脚本中指定“\time”,每一步的执行时间也会被打印出来。

脚本所需的所有信息都在输出中。

TESTDB.ADMIN(ADMIN)=> \time
Query time printout on
TESTDB.ADMIN(ADMIN)=> select count(1) from test_table;
 COUNT
-------
     7
(1 row)

Elapsed time: 0m0.216s
TESTDB.ADMIN(ADMIN)=> delete from test_table;
DELETE 7
Elapsed time: 0m1.532s

【讨论】:

嗨,我创建了一个脚本,并在脚本中使用了 nzsql nzs​​ql -d Database -q -c"delete from table where clause" -o output_file.out 我将输出output_file.out 中的 delete 语句,但 delete 命令未返回任何已删除行数的计数。有什么办法可以做到/ 您指定了-q 选项,即removes all non-query output。删除 q。

以上是关于Netezza - 从 SQL 语句中获取已删除记录的计数的主要内容,如果未能解决你的问题,请参考以下文章

Netezza 存储过程错误

我可以从 Netezza 导出 SQL 查询结果吗?

是否可以从 Eclipse 工作区获取已删除的文件?

基于星期几返回计数或空值的 Netezza SQL 语句

如何从 Netezza 删除用户

SQL 在 Netezza 中获取某些数据库的默认模式?