oracle 语句之对数据库的表名就行模糊查询,对查询结果进行遍历,依次获取每个表名结果中的每个字段
Posted 逃学威龙
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 语句之对数据库的表名就行模糊查询,对查询结果进行遍历,依次获取每个表名结果中的每个字段相关的知识,希望对你有一定的参考价值。
语句的执行环境是plsql的sql窗口, 语句的目的是从整个数据库中的所有表判断 不等于某个字段的记录数 。
代码如下:
declare s_sql clob:=‘‘; -- 声明一个变量,该变量用于存储查询的sql语句
v_cityCode varchar2(20); -- 每个sql语句执行完的查询结果
code varchar2(20); -- 查询条件
begin -- 开启事务
code :=‘110112‘;
for wf in(select table_name from user_tables where table_name like ‘__________________201711%‘) -- 从数据库中的所有表中进行表名的模糊查询, 然后依 次遍历每个表名
loop -- 循环体
s_sql:= ‘select count(*) from ‘|| wf.table_name||‘ where city_code !=:1‘; -- 组合查询语句, 其中city_code != :1的作用是使用code(下面的using code), 1 并没有实际意义
execute immediate s_sql into v_cityCode using code;--执行动态sql
dbms_output.put_line(v_cityCode||‘ ‘||wf.table_name); -- 输出结果
end loop;
end;
以上是关于oracle 语句之对数据库的表名就行模糊查询,对查询结果进行遍历,依次获取每个表名结果中的每个字段的主要内容,如果未能解决你的问题,请参考以下文章