Modyfikacja zapytania - proszę o pomoc

0

Witam,
Mogę prosić o pomoc w zmodyfikowaniu tak tego zapytania, aby wszystko grupowało mi się po ReservationId?
Usunięcie z zapytania rd.EventsId_PK_FK nie pomaga :(

SELECT rd.ReservationId_PK_FK, rd.EventsId_PK_FK, SUM(rd.NumberOfPlaces * c.PriceForDay) * (1 - (SELECT TOP 1 HeightDiscount
                             FROM Discount AS d
                             INNER JOIN Conference AS c
                             ON d.ConferenceId_FK = c.ConferenceId_PK
                             INNER JOIN DayOfConference AS doc
                             ON c.ConferenceId_PK = doc.ConferenceId_FK
                             INNER JOIN Event AS e
                             ON doc.EventsId_PK_FK = e.EventsId_PK
                             WHERE d.NrDaysBeforeConference <= DATEDIFF(day, GETDATE(), (SELECT ConferenceDay
                                                                                        FROM DayOfConference AS doc2
                                                                                        WHERE doc2.EventsId_PK_FK = rd.EventsId_PK_FK))
																						ORDER BY 1 DESC)) AS total_price
FROM ReservationDetails AS rd
INNER JOIN Event AS e
ON
e.EventsId_PK = rd.EventsId_PK_FK
LEFT OUTER JOIN DayOfConference AS doc
ON doc.EventsId_PK_FK = e.EventsId_PK
LEFT OUTER JOIN Conference AS c
ON c.ConferenceId_PK = doc.ConferenceId_FK
GROUP BY rd.ReservationId_PK_FK, rd.EventsId_PK_FK
1

Gorzej nie będzie, ale z tego co tu przedstawiłeś nic się nie da więcej:

select
    reservationid_pk_fk
    ,SUM(total_price) total_price
FROM (
    SELECT 
        rd.reservationid_pk_fk, 
        rd.eventsid_pk_fk, 
        Sum(rd.numberofplaces * c.priceforday) 
            * ( 1 - (SELECT TOP 1 
                            heightdiscount 
                    FROM   
                        discount AS d 
                        INNER JOIN conference AS c ON d.conferenceid_f    k = c.conferenceid_pk 
                        INNER JOIN dayofconference AS doc ON c.conferenceid_pk = doc.conferenceid_fk 
                        INNER JOIN event AS e ON doc.eventsid_pk_fk = e.eventsid_pk 
                    WHERE 
                        d.nrdaysbeforeconference <= Datediff(day, Getdate(), (SELECT 
                                                                                conferenceday 
                                                                            FROM 
                                                                                dayofconference AS doc2 
                                                                            WHERE 
                                                                                doc2.eventsid_pk_fk = rd.eventsid_pk_fk)) 
                                                                            ORDER  BY 1 DESC) 
            ) AS total_price 
    FROM   
        reservationdetails AS rd 
        INNER JOIN event AS e ON e.eventsid_pk = rd.eventsid_pk_fk 
        LEFT OUTER JOIN dayofconference AS doc ON doc.eventsid_pk_fk = e.eventsid_pk 
        LEFT OUTER JOIN conference AS c ON c.conferenceid_pk = doc.conferenceid_fk 
    GROUP  BY 
        rd.reservationid_pk_fk, 
        rd.eventsid_pk_fk ) DT
GROUP BY
    reservationid_pk_fk

1 użytkowników online, w tym zalogowanych: 0, gości: 1