如何从 SQL table 中获取缺失的行?
How do you get get absent rows from a SQL table?
我不确定我是否在标题中提出了正确的问题,但这里是正确的场景。
假设我有 SQL table 每天插入行。在这些行中,有一列具有一组值。这意味着在这个专栏中,我们称之为 Source_system,我们每天收到 20 个值。每天都有相同的不同价值观。现在有什么办法可以得到那天没有插入的源系统的名称吗?
编辑:抱歉英语不好。
根据数据的格式化方式,有多种方法可以做到这一点。如果未插入的 Source_system 条目为空,则可以使用简单的 Where
语句查找空白内容并获取其余列的名称
Select *
From Table_name
Where Source_system is null
由于您知道 20 个不同的值,如果您在 table 中有这些值,您还可以 Outer Join
table 并找到 Source_system 所在的行与 table 个不同值
中的条目不匹配
Select Date_inserted_into_db, Source_system
From Table_name T1
Full Outer Join Table_of_distinct_values T2 on T1.Source_system = T2.Source_system
Where Source_system is null
我不确定我是否在标题中提出了正确的问题,但这里是正确的场景。
假设我有 SQL table 每天插入行。在这些行中,有一列具有一组值。这意味着在这个专栏中,我们称之为 Source_system,我们每天收到 20 个值。每天都有相同的不同价值观。现在有什么办法可以得到那天没有插入的源系统的名称吗?
编辑:抱歉英语不好。
根据数据的格式化方式,有多种方法可以做到这一点。如果未插入的 Source_system 条目为空,则可以使用简单的 Where
语句查找空白内容并获取其余列的名称
Select *
From Table_name
Where Source_system is null
由于您知道 20 个不同的值,如果您在 table 中有这些值,您还可以 Outer Join
table 并找到 Source_system 所在的行与 table 个不同值
Select Date_inserted_into_db, Source_system
From Table_name T1
Full Outer Join Table_of_distinct_values T2 on T1.Source_system = T2.Source_system
Where Source_system is null