【发布时间】:2014-01-26 15:34:55
【问题描述】:
嗨,我正在尝试加入多个表,但我的主表包含空值作为外键,所以如果我想要关于我的 artikelen 的所有信息,我必须检查空值。当我执行查询时,我收到了我的信息,但每行显示三遍左右。我不知道为什么
SELECT DISTINCT Artikelen.*, BtwTarieven.*, Eenheden.*, Categorieen.*, Leveranciers.IdLeverancier, Leveranciers.Naam, Leveranciers.Actief
FROM Artikelen
JOIN BtwTarieven
ON (BtwTarieven.IdBtwTarief = Artikelen.IdBtwTarief OR Artikelen.IdBtwTarief IS NULL)
JOIN Eenheden
ON (Eenheden.IdEenheid = Artikelen.IdEenheid OR Artikelen.IdEenheid IS NULL)
JOIN Categorieen
ON (Categorieen.IdCategorie = Artikelen.IdCategorie OR Artikelen.IdCategorie IS NULL)
Join Leveranciers
ON (Leveranciers.IdLeverancier = Artikelen.IdStandaardLeverancier OR Artikelen.IdStandaardLeverancier IS NULL)
【问题讨论】:
-
显示样本数据和所需结果。显示多行是因为连接会生成所有可能的组合,因此某些表有多行用于您正在查看的数据。
标签: sql sql-server