拉链表设计原理
①.将拉链表和每日增量数据做左连接
每日增量没有匹配的数据和拉链表endtime<99991231的数据保持不变,
其他的endtime变为每日增量的starttime 1),如果数据发生修改,
拉链表和增量数据左连接,将拉链表的endtime修改为增量表starttime1,
(左连接匹配上的数据说明数据有变动,
但是拉链表endtime<99991231说明已经是历史状态,不需要改变)。
②.将每日增量数据和①结果进行union
设计过程
①.表创建以及数据导入
CREATE TABLE zipper( --拉链表
userid VARCHAR(20),
phone VARCHAR(20),
nick VARCHAR(20),
gender VARCHAR(20),
addr VARCHAR(20),
starttime DATE,
endtime DATE
) row format delimited fields terminated by '\t';
CREATE TABLE zipper_update( --每日