Kolom is ongeldig in de selectielijst omdat deze niet is opgenomen in een verzamelfunctie of in de GROUP BY-component

Ik begrijp niet waarom de kolom 'OrderInfo.DateSold' een fout bevat voor de volgende opgeslagen procedure. Help me alsjeblieft. Dit is inSQL-server2005

SELECT DateSold,
       Rep.FirstName,
       Company,
       Contact,
       Phone,
       OPD.TotalAmount                              AS Sold,
       SUM(OPD.PaymentAmount)                       AS Collected,
       ( OPD.TotalAmount - SUM(OPD.PaymentAmount) ) AS Balance
FROM   OrderInfo
       INNER JOIN Order_PaymentDetails OPD
         ON OrderInfo.OrderID = OPD.OrderID
       INNER JOIN SalesRep_Info Rep
         ON OrderInfo.RepID = Rep.RepID
WHERE  OrderInfo.CommuniTeeID = @CommuniTeeID
GROUP  BY OrderInfo.Company 

Dank je !

0

1 antwoord

Dit komt omdat als u in de resulterende reeks de kolom "Datesold" wilt zien, enzovoort, u ook op deze velden moet groeperen:

SELECT 
    DateSold,
    Rep.FirstName,
    Company,
    Contact,
    Phone,
    OPD.TotalAmount AS Sold,
    SUM(OPD.PaymentAmount) AS Collected,
    (OPD.TotalAmount - SUM(OPD.PaymentAmount)) AS Balance 
FROM   
    OrderInfo
INNER JOIN 
    Order_PaymentDetails OPD ON OrderInfo.OrderID = OPD.OrderID
INNER JOIN 
    SalesRep_Info Rep ON OrderInfo.RepID = Rep.RepID 
WHERE  
    OrderInfo.CommuniTeeID = @CommuniTeeID
GROUP BY 
    OrderInfo.Company, DateSold, Rep.FirstName, Contact,
    Phone, OPD.TotalAmount
1
toegevoegd