添加其他列Access

时间:2015-01-01 20:43:21

标签: sql database ms-access rdbms

我必须为Access中的汽车制作DBMS。但我遇到了问题。在我之前的问题中,我得到了这个代码,它解决了我的第一个问题。但现在我只获得了TotalPrijsAutoNRKlasse列。但我还需要:Factuur.DagenFactuur.KlantNR等。我通常使用SELECT执行此操作但现在代码更复杂,我不知道如何在不出错的情况下获取它

这是我的代码。

SELECT 
SUM(A.TotaalPrijs) As TotaalPrijs,
A.AutoNR,
A.AutoKlasse
FROM
(SELECT Factuur.Dagen, Factuur.AutoNR AS carNR, autos.AutoNR, autos.Klasse AS AutoKlasse, Prijzen.Klasse, Prijzen.dag125KM, Prijzen.ExtraKM, (prijzen.dag125KM*Factuur.Dagen) AS MinPrijs, Factuur.FactuurNR, Factuur.KlantNR, Factuur.Begindatum, Factuur.Einddatum, Factuur.Borg, (((([Factuur]![EindKMStand]-[Factuur]![BeginKMStand])-([Factuur]![Dagen]*125))*[Prijzen]![ExtraKM])+([Prijzen]![dag125KM]*[Factuur]![Dagen])) AS TotaalPrijs, Gegevens.voorletters, Gegevens.tussenvoegsel, Gegevens.achternaam, Gegevens.straatnaam, Gegevens.huisNR, Gegevens.Postcode, Gegevens.rekeningNR, Gegevens.Plaats, (([Factuur]![EindKMStand]-[Factuur]![BeginKMStand])-Dagen*125) AS KMteVEEL
        FROM autos, Factuur, Prijzen, Gegevens
        WHERE (((Factuur.AutoNR)=Autos.AutoNR) And ((autos.Klasse)=Prijzen.Klasse) And ((Factuur.KlantNR)=Gegevens.KlantNR))
) AS A
GROUP BY 
    A.AutoNR, A.AutoKlasse

如何添加Factuur.DagenFactuur.KlantNR以及其他列?

1 个答案:

答案 0 :(得分:0)

如果您手头有数据分组,而SELECT只需要其中一个......那么您可以取出一个逻辑值。

这就是我们使用AGGREGATE功能的原因。就像SUM()在您的分组数据中添加了所有TotaalPrijs一样。从MAX(Dagen)获取该组中的一个值。

SELECT 
SUM(A.TotaalPrijs) As TotaalPrijs,
A.AutoNR,
A.AutoKlasse,
MAX(Factuur.Dagen) -- < you need just this..!

OR 也将此列添加到您的分组条件中!

GROUP BY A.AutoNR, A.AutoKlasse,Factuur.Dagen