无法使子查询工作
Not able to get a subquery working
我有问题。问题是我无法使简单的查询正常工作。我正在使用 MS-Access。
基本上我必须制作一张发票 (Factuur) 来获得房地 (Borg)。我正在使用这个查询
SELECT Factuur.FactuurNR,Prijzen.Borg
FROM Prijzen, Factuur
WHERE Klasse IN
(SELECT Autos.Klasse
FROM Autos, Factuur
WHERE Autos.AutoNR = Factuur.AutoNR);
但是通过该查询,我得到了所有 InvoiceNR,其中包含所有可能的前提。
截屏:
但是当我尝试只执行子查询时
SELECT Autos.Klasse
FROM Autos, Factuur
WHERE Autos.AutoNR = Factuur.AutoNR
它给了我正确的汽车 Class。
我唯一需要的是与正确发票匹配的场所。
前提是基于carclass。该场所位于 Prijzen table。
谢谢,
是的,问题出在子查询中,当您尝试单独执行它时,它会为您提供结果。但是,当您将它与主查询结合使用时,它将不起作用,因此在子查询中添加一个分组依据并给出答案。
例如:“SELECT Autos.Klasse
来自汽车,Factuur
WHERE Autos.AutoNR = Factuur.AutoNR 分组依据 Prijzen.Borg";
使用JOIN
。试试这个方法:
SELECT Factuur.FactuurNR,Prijzen.Borg
FROM ((Prijzen
INNER JOIN Autos ON Autos.Klasse = Prijzen.Klasse)
INNER JOIN Factuur ON Factuur.AutoNR = Autos.AutoNR)
GROUP BY Factuur.FactuurNR,Prijzen.Borg;
(SELECT Autos.Klasse
FROM Autos, Factuur
WHERE Autos.AutoNR = Factuur.AutoNR);
Returns 标量(奇异)值。
因此,当您执行 Klasse = (SELECT ...) 时。相当于写Klasse = true,或者Klasse = 3,或者Klasse = null。
我有问题。问题是我无法使简单的查询正常工作。我正在使用 MS-Access。 基本上我必须制作一张发票 (Factuur) 来获得房地 (Borg)。我正在使用这个查询
SELECT Factuur.FactuurNR,Prijzen.Borg
FROM Prijzen, Factuur
WHERE Klasse IN
(SELECT Autos.Klasse
FROM Autos, Factuur
WHERE Autos.AutoNR = Factuur.AutoNR);
但是通过该查询,我得到了所有 InvoiceNR,其中包含所有可能的前提。
截屏:
但是当我尝试只执行子查询时
SELECT Autos.Klasse
FROM Autos, Factuur
WHERE Autos.AutoNR = Factuur.AutoNR
它给了我正确的汽车 Class。
我唯一需要的是与正确发票匹配的场所。 前提是基于carclass。该场所位于 Prijzen table。 谢谢,
是的,问题出在子查询中,当您尝试单独执行它时,它会为您提供结果。但是,当您将它与主查询结合使用时,它将不起作用,因此在子查询中添加一个分组依据并给出答案。 例如:“SELECT Autos.Klasse 来自汽车,Factuur WHERE Autos.AutoNR = Factuur.AutoNR 分组依据 Prijzen.Borg";
使用JOIN
。试试这个方法:
SELECT Factuur.FactuurNR,Prijzen.Borg
FROM ((Prijzen
INNER JOIN Autos ON Autos.Klasse = Prijzen.Klasse)
INNER JOIN Factuur ON Factuur.AutoNR = Autos.AutoNR)
GROUP BY Factuur.FactuurNR,Prijzen.Borg;
(SELECT Autos.Klasse
FROM Autos, Factuur
WHERE Autos.AutoNR = Factuur.AutoNR);
Returns 标量(奇异)值。
因此,当您执行 Klasse = (SELECT ...) 时。相当于写Klasse = true,或者Klasse = 3,或者Klasse = null。