更新docker

This commit is contained in:
2024-01-14 22:55:02 +08:00
parent 77859f4a53
commit 78612e55a7
4 changed files with 109 additions and 4 deletions

View File

@ -101,3 +101,53 @@ alter table t1 exchange partition p2 with table test_t1;
```
快速创建分区表
```sql
--生成sql
select 'CREATE TABLE tcn_stat_algorithm_data_fltn_'||"FLT_NBR"|| ' PARTITION OF "TCN_STAT_ALGORITHM_DATA_FLTN" FOR VALUES IN (''' || "FLT_NBR"||''');'
from (
select distinct "FLT_NBR"::varchar from "TCN_STAT_ALGORITHM_DATA" where "FLT_DT" between '20190101' and '20191231'
EXCEPT
select high_value from all_tab_partitions where table_name = '"TCN_STAT_ALGORITHM_DATA_FLTN"'
)
--将上述查询结果另外开一个窗口进行执行,重复 第一步 直至 第一步查询不出结果。
-- 生成创建 分区的sql
select 'CREATE TABLE IF NOT EXISTS t_icc_retail_price_' || LOWER(tirp.flight_no) ||
' PARTITION OF t_icc_retail_price FOR VALUES IN (''' || tirp.flight_no || ''');'
from (select distinct flight_no::varchar
from t_icc_retail_price
where batch_date >= '2023-01-01 00:00:00'
and batch_date <= '2023-11-30 00:00:00'
and deleted = 0) as tirp
--执行该sql 进行数据导入 可以调整 FLT_DT 分批执行 (可以重复执行)
INSERT INTO "TCN_STAT_ALGORITHM_DATA_FLTN" ("BOOKING_DATE", "BOOKING_TIME", "RDCP", "CARRIER", "FLT_NBR", "FLT_DT", "ORIG_AIRPORT_CD", "STOPOVER", "DEST_AIRPORT_CD", "CABIN_CD", "SCLS", "ROUTE_AMOUNT", "FINAL_AMOUNT", "TICKET_NO", "TICKET_ID", "FLTN_YEAR")
SELECT "BOOKING_DATE", "BOOKING_TIME", "RDCP", "CARRIER", "FLT_NBR", "FLT_DT", "ORIG_AIRPORT_CD", "STOPOVER", "DEST_AIRPORT_CD", "CABIN_CD", "SCLS", "ROUTE_AMOUNT", "FINAL_AMOUNT", "TICKET_NO", "TICKET_ID", "FLTN_YEAR" FROM "TCN_STAT_ALGORITHM_DATA"
where "FLT_DT" between '20230101' and '20231231'
ON CONFLICT ("FLT_NBR","TICKET_ID") DO nothing
```