我想使用 SQL for DB2 z/OS v9 计算模式中所有表中的记录

Posted

技术标签:

【中文标题】我想使用 SQL for DB2 z/OS v9 计算模式中所有表中的记录【英文标题】:I would like to count records in all tables in the schema using SQL for DB2 z/OS v9 【发布时间】:2015-03-27 14:47:13 【问题描述】:

我试试这个说法

select schema_name , tabs_name ,
('select count(*) from' || schema_name ||'.'|| tabs_name)
from sysibm.systables
where schema_name = 'Sample'

我想在string类型中可以是execute string还是必须是create procedure之类的?

'select count(*) from' || schema_name ||'.'|| tabs_name

提前谢谢你 来自泰国

【问题讨论】:

您必须为示例模式中的每个表执行一个选择语句。 (可能是某种动态/脚本解决方案。) 能否请您举一些动态/脚本的例子? 如果您的表统计信息是最新的,它看起来像这样might be in the syscat tables already。否则,是的,您需要动态声明; this looks like a good starting point。你想要这些信息有什么用? 【参考方案1】:

试试这个:

Select TABLE_SCHEMA, TABLE_NAME, NUMBER_ROWS from qsys2.systablestat
Where TABLE_NAME = 'Sample'

【讨论】:

以上是关于我想使用 SQL for DB2 z/OS v9 计算模式中所有表中的记录的主要内容,如果未能解决你的问题,请参考以下文章

在 DB2 sql for z/os 中用 0 填充 smallint

DB2 v8 for z/OS 中的交叉连接

如何在 DB2 for Z/OS 中返回系统日期或日期时间?

对 DB2 for z/OS 的存储过程调用中不支持字符串文字

如何使用 SQL 在 IBM DB2 Z/OS 中的表上显示当前权限

DB2 for z/OS:CURSOR FOR UPDATE 锁定行为