使用函数查询符合条件的表,并清空表数据,或者删除表

news/2024/7/9 23:23:10 标签: postgresql, 数据库, 函数, 查询

下边的查询条件可根据具体需求进行修改

调用方法:select * from 函数名();

         eg:select * from query_all_table_name();

1.查询所有符合条件的表名

create or replace function query_all_table_name() returns setof varchar as 
$$
  declare
    select_result record;
  begin
  for select_result in
    select tablename from ux_tables where tablename like 'tbl_%' and tablename != 'tbl_user'
  loop
    return next select_result.tablename;
  end loop;
  return;
  end;
$$
language pluxsql volatile
cost 100 rows 1000;

2.清除(delete)所有查询到的符合条件的表的数据

create or replace function clear_table_data() returns text as 
$$
  declare
    select_result record;
    table_name varchar;
  begin
    for select_result in
      select tablename from ux_tables where tablename like 'tbl_%' and tablename != 'tbl_user'
    loop
      table_name = select_result.tablename;
      execute 'delete from ' || table_name;
    end loop;
    return 'success';
  end;
$$
language pluxsql;

3.删除(drop)所有查询到的符合条件的表

create or replace function drop_table() returns text as 
$$
  declare
    select_result record;
    table_name varchar;
  begin
    for select_result in
      select tablename from ux_tables where tablename like 'tbl_%' and tablename != 'tbl_user'
    loop
      table_name = select_result.tablename;
      execute 'drop table ' || table_name;
    end loop;
    return 'success';
  end;
$$
language pluxsql;


http://www.niftyadmin.cn/n/1727555.html

相关文章

华为机试:学生方阵

【编程题目 |200分】学生方阵【2022 Q2 考试题】 题目描述 学校组织活动,将学生排成一个矩形方阵。请在矩形方阵中找到最大的位置相连的男生数量。这个相连位置在一个直线上,方向可以是水平的,垂直的,成对角线的或者呈反对角线的…

beyond compare tab(制表符)占位

beyond compare 中的tab键(制表符)默认是8个,但有的编辑器是4个,这会导致比较文件时格式错乱问题,所以需要把beyond compare的tab键占位数设置成和编辑器一致就可以了,具体设置方法如下图所示:修…

源码编译安装net-snmp

编译安装net-snmp 1.官网下载最新net-snmp的tar包:http://www.net-snmp.org/download.html 如果官网打不开,可从这里下载net-snmp-5.7.3.tar.gz(内附gcc的rpm包) 2.检查主机是否已安装编译工具gcc,直接输入gcc命令回车查看,如果…

设备 eth0 似乎不存在, 初始化操作将被延迟

今天将eth0文件编辑好之后,不管是重启network还是重启电脑都没用,一直显示个eth1,我就很纳闷,明明没有eth1这个文件,eth1到底从哪里来的,网上好多方法都试过了还是不行,什么删除/etc/udev/rules…

Nginx安装配置,支持http以及https

一、Nginx安装可参考:Nginx 安装配置如果yum安装失败,可从这个地方***下载相关rpm包,直接执行install.sh安装即可 二、配置http修改配置文件nginx.conf,安装上边的步骤安装,应该是在/usr/local/webserver/nginx/conf这…

shell 去掉字符串最后一个斜杠(如果最后一个字符是斜杠)

[rootlocalhost ~]# stra/home/zz [rootlocalhost ~]# strb/home/zz/ [rootlocalhost ~]# echo ${stra%*/} /home/zz [rootlocalhost ~]# echo ${strb%*/} /home/zz [rootlocalhost ~]#

nodejs上传文件--multer

上传单个文件的方法 1.在routes目录下添加upload.js文件(如果没有multer模块,则使用 npm install multer 来下载) upload.js var router require(express).Router(); var multer require(multer); var gFilename ""; var storag…

action提交form表单后不跳转

正常的form表单提交后页面都会跳转&#xff0c;为了防止页面跳转&#xff0c;可使用jQuery的ajaxSubmit来防止跳转&#xff0c;可使页面保持原样不变 1.首先引入以下文件 <script type"text/javascript" src"/js/jquery/jquery.form.js"></script…