比较(JOIN)表并获取新记录

本文关键字:获取 新记录 JOIN 比较 | 更新日期: 2023-09-27 18:18:35

我这里遇到麻烦了。假设我有两个表,记录之间唯一的东西是它们的条形码。我使用以下代码:

INSERT INTO rez1(barcode,No_,lik_pagr,inventkiekis,Vidurkis,skirias)
SELECT t2.barcode, t2.No_, t1.lik_pagr, t2.lik_pagr, ROUND(t2.lik_pagr - t1.lik_pagr,3) AS   'Vidurkis', CASE WHEN (t1.lik_pagr - t2.lik_pagr)<>0 THEN 1 
ELSE 0 
END
FROM likuciai AS t1
INNER JOIN pirmoji AS t2 
ON t1.barcode = t2.barcode;

这里的问题我有-它只选择记录存在于这两个表(上条形码),但我怎么能得到条形码不等于表t1的记录?因为t2总是用户更新的表,t1是旧的,我必须显示并应用相同的算法到这些记录上的匹配。

比较(JOIN)表并获取新记录

您需要使用LEFT JOIN。只需将"INNER"替换为"LEFT"。这将从t1中获取所有记录,并为t2值返回NULL,其中t1。条形码在t2中没有匹配的条形码