我有两张表,在pmid
上有一对多关联。所以如果一个表有pmid
,第二个表应该有多个具有相同pmid的行。然而,一些东西横向出现,我在第二张表中错过了我最新的一批pmids。这些查询应该有助于说明问题,但我无法弄清楚如何从第一个表中实际缺少的第二个表中获取ID。识别其他表中不存在的值
select count(*) from abstract_mesh am; #2167101
select count(*) from abstract_mesh am
join abstracts a on am.pmid = a.pmid; #2133848
select 2167101 - 2133848; #33253
select count(*) from abstract_mesh where pmid is NULL; #33253
因此,您可以看到abstract_mesh中有33,253行没有pmids。我只是想从摘要表中确定哪些pmids应该感兴趣。
https://explainextended.com/2009/09/15/not-in -vs-not-exists-vs-left-join-is-null-sql-server /如果你想读一些 – Blag