我有多个审计日志(log)表,我正在try 找出一种在SQL中连接这些表以生成整体审计日志(log)的方法.
create table firstname_history(userid int, name string, timestamp date);
insert into firstname_history values
(0, 'joe', '2000-01-01'),
(0, 'mark', '2000-01-12'),
(0, 'adam', '2000-01-21');
create table lastname_history(userid int, name string, timestamp date);
insert into lastname_history values
(0, 'brown', '2000-01-03'),
(0, 'franklin', '2000-01-21'),
(0, 'hampton', '2000-01-27');
假设我有上面关于名字更改和姓氏更改的不同日志(log)表.我希望一条SQL语句生成全名的审计日志(log),考虑到同时更改(在2000-01-21
上,名字和姓氏都同时更改,因此这应该只是一条记录).
因此,对于上面的内容,我需要一条SELECT语句来生成
+------------+-------+----------+
| timestamp | first | last |
+------------+-------+----------+
| 2000-01-01 | joe | NULL |
| 2000-01-03 | joe | brown |
| 2000-01-12 | mark | brown |
| 2000-01-21 | adam | franklin |
| 2000-01-27 | adam | hampton |
+------------+-------+----------+
这样的 Select 在SQL中是可能的吗?我甚至不知道这种连接会被称为什么.