亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > PostgreSQL > 正文

postgresql 按小時分表(含觸發器)的實現方式

2024-09-07 00:19:30
字體:
來源:轉載
供稿:網友

本人后端開發,因為業務需求需要使用分表方式進行數據存儲。結合網上的資料最后使用的以下方式:

CREATE OR REPLACE FUNCTION auto_insert_into_tbl_partition() RETURNS trigger AS$BODY$DECLARE  time_column_name   text ;      -- 父表中用于分區的時間字段的名稱[必須首先初始化!!]  curMM     varchar(16);    -- 'YYYYMM'字串,用做分區子表的后綴  isExist     boolean;    -- 分區子表,是否已存在  strSQL     text;  BEGIN  -- 調用前,必須首先初始化(時間字段名):time_column_name [直接從調用參數中獲取!!]  time_column_name := TG_ARGV[0];    -- 判斷對應分區表 是否已經存在?  EXECUTE 'SELECT $1.'||time_column_name INTO strSQL USING NEW;  curMM := to_char( strSQL::timestamp , 'YYYYMMDDHH' );  select count(1) INTO isExist from pg_class where relname = ('t_audit_'||curMM);   -- 若不存在, 則插入前需 先創建子分區  IF ( isExist = false ) THEN     -- 創建子分區表    strSQL := 'CREATE TABLE IF NOT EXISTS t_audit_'||curMM||'() INHERITS (t_audit);' ;     EXECUTE strSQL;    -- 創建索引    strSQL := 'CREATE INDEX t_audit_'||curMM||'_INDEX_'||time_column_name||' ON t_audit_'||curMM||' ('||time_column_name||');' ;    EXECUTE strSQL;  END IF;   -- 插入數據到子分區!  strSQL := 'INSERT INTO t_audit_'||curMM||' SELECT $1.*' ;  EXECUTE strSQL USING NEW;  RETURN NULL; END$BODY$ LANGUAGE plpgsql;

我是按照小時對固定的一張表進行分表的,其實可以寫活就是加個變量,拼sql的時候拼接進去。這個就是寫個函數作為觸發器的回調函數。就先判斷一下這個表有沒有,有就直接插,沒有就建表再插。

CREATE TRIGGER insert_tbl_partition_trigger BEFORE INSERT ON t_audit FOR EACH ROW EXECUTE PROCEDURE auto_insert_into_tbl_partition('time');

建一個觸發器,在父表的插入數據的時候執行前面的那個回調函數。

ps:下面看下postgresql 表觸發器

1、先建一個函數,用來執行觸發器啟動后要執行的腳本

CREATE OR REPLACE FUNCTION "public"."trigger_day_aqi"() RETURNS "pg_catalog"."trigger" AS $BODY$BEGIN  --日均值表,沒有o3,小時值表,沒有o3_8h   NEW.so2iaqi=DAY_SO2_AQI(NEW.so2);     NEW.no2iaqi=DAY_NO2_AQI(NEW.no2);     NEW.coiaqi=DAY_CO_AQI(NEW.co);     NEW.o3_8hiaqi=O3_8_AQI(NEW.o3_8h);     NEW.pm10iaqi=PM10_AQI(NEW.pm10);     NEW.pm25iaqi=PM25_AQI(NEW.pm25);     NEW.aqi=NEW.coiaqi;     NEW.primarypol='CO';    IF NEW.aqi<NEW.no2iaqi  then  NEW.aqi=NEW.no2iaqi;  NEW.primarypol='NO2';  end if;    IF NEW.aqi<NEW.so2iaqi  then  NEW.aqi=NEW.so2iaqi;  NEW.primarypol='SO2';  end if;    IF NEW.aqi<NEW.o3_8hiaqi then  NEW.aqi=NEW.o3_8hiaqi;  NEW.primarypol='O3_8H'; end if;    IF NEW.aqi<NEW.pm10iaqi then  NEW.aqi=NEW.pm10iaqi;  NEW.primarypol='PM10';  end if;    IF NEW.aqi<NEW.pm25iaqi then  NEW.aqi=NEW.pm25iaqi;  NEW.primarypol='PM2.5'; end if;     IF NEW.aqi<=50      then  NEW.primarypol='-';   end if;     NEW.aqilevel=getRank(NEW.aqi);  RETURN NEW;END;$BODY$ LANGUAGE plpgsql VOLATILE COST 100

2、建表的觸發器,

CREATE TRIGGER gk_site_day_insert BEFORE INSERT ON gk_site_day  FOR EACH ROW EXECUTE PROCEDURE trigger_day_aqi();
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
韩剧1988在线观看免费完整版| 亚洲欧洲国产伦综合| 欧美色xxxx| 亚洲电影在线观看| 国产欧美日韩视频| 久久久免费观看| 国产精品老女人视频| 国产精品久久久久久久久久| 色在人av网站天堂精品| 亚洲全黄一级网站| 精品精品国产国产自在线| 国产精品免费一区| 欧美日韩在线视频观看| 成人国产精品色哟哟| 992tv成人免费视频| 国产一区二区三区在线视频| 欧美日韩国产麻豆| 久久精品视频在线| 中文字幕在线看视频国产欧美在线看完整| 国内偷自视频区视频综合| 欧美日韩国产丝袜另类| 欧美猛交免费看| 美女啪啪无遮挡免费久久网站| 在线视频亚洲欧美| 亚洲精品第一页| 国产在线视频91| 国产精品高潮呻吟久久av野狼| 国产视频自拍一区| 欧美激情亚洲视频| 欧美精品久久一区二区| 国产欧美一区二区三区四区| 国产精品视频免费观看www| 国产精品久久久久久久久粉嫩av| 性欧美暴力猛交69hd| 日韩av电影手机在线观看| 夜夜嗨av色综合久久久综合网| 日韩欧美亚洲综合| 色一区av在线| 欧美在线精品免播放器视频| 日韩精品在线观看网站| 91嫩草在线视频| 日韩精品极品毛片系列视频| 亚洲最大av在线| 欧美视频精品一区| 国产精品一久久香蕉国产线看观看| 欧美专区国产专区| 国产国产精品人在线视| 一本一本久久a久久精品综合小说| 久久人人爽人人爽爽久久| 色在人av网站天堂精品| 国产在线精品一区免费香蕉| 97超碰蝌蚪网人人做人人爽| 欧美多人爱爱视频网站| 亚洲精品午夜精品| 国产精品欧美久久久| 插插插亚洲综合网| 日韩电影大片中文字幕| 岛国av午夜精品| 亚洲性无码av在线| 亚洲精品成a人在线观看| 国产精品扒开腿做爽爽爽视频| 91经典在线视频| 欧美电影免费观看高清完整| 亚洲大胆人体在线| 日本精品视频在线播放| 欧美日本精品在线| 久久精品这里热有精品| 欧美在线视频播放| 亚洲国产一区自拍| 国产成人在线一区二区| 久久久免费高清电视剧观看| 超碰精品一区二区三区乱码| 欧美性高潮床叫视频| 国产精品久久久久av| 51精品国产黑色丝袜高跟鞋| 欧美精品少妇videofree| 亚洲伊人成综合成人网| 国产精品伦子伦免费视频| 精品国产鲁一鲁一区二区张丽| 亚洲japanese制服美女| 欧美激情视频网址| 亚洲加勒比久久88色综合| 国产精品高潮呻吟视频| 亚洲免费电影一区| 韩国三级电影久久久久久| 国产亚洲精品美女久久久久| 国产精品美女久久| 日韩中文字幕视频在线观看| 深夜福利一区二区| 久久久精品视频在线观看| 国产精品一区二区久久久久| 亚洲最大的免费| 精品国产依人香蕉在线精品| 国产精品av免费在线观看| 国产视频精品va久久久久久| 高清日韩电视剧大全免费播放在线观看| 日韩暖暖在线视频| 国产自摸综合网| 色中色综合影院手机版在线观看| 欧美日韩国产精品一区| 国产欧洲精品视频| 国产精品99久久久久久白浆小说| 国产欧美日韩精品丝袜高跟鞋| 国产一区二区久久精品| 97在线观看免费| 久久久久久久久久久人体| 视频在线观看99| 国产精品久久久久久久久| 亚洲福利在线观看| 欧美日韩视频在线| 久久久久久久电影一区| 亚洲电影免费观看高清完整版| 亚洲va码欧洲m码| 黑人巨大精品欧美一区免费视频| 8090成年在线看片午夜| 亚洲欧美日本伦理| 亚洲大胆美女视频| 久久久99免费视频| 欧美大荫蒂xxx| 国产精品入口免费视| 91精品啪aⅴ在线观看国产| 亚洲最大福利网站| 欧美一区二区三区免费视| 日韩免费av在线| 国产精品亚发布| 久久久精品免费视频| 最近2019中文字幕mv免费看| 欧美日韩国产成人高清视频| 欧美激情精品久久久久久久变态| 欧美精品在线第一页| 精品在线欧美视频| 国产一区二区黄| 亚洲欧美中文在线视频| 国产精品久久久久久久久粉嫩av| 91国语精品自产拍在线观看性色| 亚洲精品久久久一区二区三区| 欧美激情久久久久| 日韩一区二区欧美| 国产日韩欧美黄色| 久久久成人的性感天堂| 精品久久久免费| 欧美一级bbbbb性bbbb喷潮片| 国产在线观看精品一区二区三区| 成人激情视频小说免费下载| 中文字幕亚洲欧美一区二区三区| 国产精品视频久久久| 欧美电影院免费观看| 国内精品久久久久久影视8| 亚洲成人久久网| 色综合导航网站| www.亚洲一区| 欧美激情视频一区| 日韩中文字幕视频| www国产精品视频| 日本人成精品视频在线| 伊人久久五月天| 久久91亚洲精品中文字幕| 国产成人在线一区| 欧美一级视频在线观看| 久久久国产精彩视频美女艺术照福利| 午夜精品在线视频| 日韩女优在线播放| 成人日韩av在线| 亚洲毛片一区二区|