存过流程
1.先做目标表和源表的mapping映射
2.找到对应关联条件,和字段的关联(当出现表名或者列名相同时,以主观意识进行判断,选择对应表)
3.多表关联
4.where条件过滤null值。可选项:加个and not exists(子查询)过滤
5.存过开头表名替换-存储过程开头:PROC_表名
6.删除信息表名替换
7.insert into 并表名替换,括号中列替换
8.select 列名替换
9.运行存过
10.调用存过:CALL 前缀_存过名 (‘yyyy-mm-dd’)
补充:
1.修改存过需要在CREATE后面加OR REPLACE,并重新CALL一下才能显示新数据
2.删除昨日客户汇总信息那边记得改表名,不然将其他表数据删除了
复制表结构
1.找到对应表,上面有个DDL
2.点options,全打勾,点generate
3.复制,修改表名,列后面in的名改为TS_前缀名,comment后面的表名
4.对应库下执行SQL
declare和set的区别
declare(存储过程变量)定义的类似是局部变量,仅在方法中生效,即只在存过中begin和end之间生效
set(会话变量)定义的类似全局变量,即这个变量可以在被调用的存过或代码之间共享数据,变量前面必须加@符号(@是用户自定义变量,@@是系统定义变量)
临时表步骤:1.创建临时表 2.往临时表插数据 3.关联临时表
SET SMY_STEPNUM=SMYSTEPNUM+1; --------SMY大多为临时表的意思
SET SMY_STEPDESC=‘STEP01:XXXX临时表’;
DECLARE GLOBAL TEMPORARY TABLE SESSION.表名
(
字段 字段类型 (长度)
)
O