如何编写SQL查询获取指定schema下仅Table分类的表头名称
查询指定schema下仅Table分类的表名解决方案
现有schema层级结构如下:
Schema_name - Table - View
你当前使用的SQL会同时返回Table和View两类对象名称,原因是syscat.tables系统视图本身会存储表、视图等多类数据库对象的元数据,需要新增类型过滤条件实现需求。
正确查询语句
SELECT TABNAME FROM syscat.tables WHERE tabschema = 'SCHEMA-NAME' AND TYPE = 'T'
说明
TYPE是syscat.tables中标识对象类型的字段:- 取值为
'T'时对应普通用户表,即你需要的Table分类对象 - 取值为
'V'时对应视图
- 取值为
- 替换语句中的
SCHEMA-NAME为你实际要查询的schema名称,即可得到仅属于Table分类的表名结果。
注:syscat.tables是DB2数据库的系统编目视图,上述语法适配DB2运行环境
内容的提问来源于stack exchange,提问作者JoeyOC
相关产品推荐
相关产品推荐

