Site Sponsored By: SQLDSC - SQL Server Desired State Configuration
Please start any new threads on our new
site at https://forums.sqlteam.com. We've got lots of great SQL Server
experts to answer whatever question you can come up with.
SELECT DISTINCT dbo.RoomRates.RoomID, CASE WHEN (dbo.RoomRates.Overflow = 1 AND MIN(dbo.RoomRates.Availability) <= 5) THEN 5 ELSE MIN(dbo.RoomRates.Availability) END AS Availability, SUM( dbo.RoomRates.Price ) AS RoomTotalPriceFROM dbo.RoomRatesWHERE dbo.RoomRates.[Date] BETWEEN @FromDate AND @ToDateGROUP BY dbo.RoomRates.RoomID , dbo.RoomRates.OverflowInput 1roomid Date AvailableRooms RoomPrice FreeSale100 01/12/08 FA 0 10 1100 02/12/08 FA 8 10 0100 03/12/08 FA 4 10 0Output(needed output)roomid Availability RoomTotalPrice100 4 30but what we are gettingroomid Availability RoomTotalPrice100 5 10100 4 20Since Overflow data is different it groups according to Overflow data.so we are receiving 2 records.
visakh16
Very Important crosS Applying yaK Herder
52326 Posts
Posted - 2008-11-01 : 07:08:47
may be this
SELECT dbo.RoomRates.RoomID,MIN(CASEWHEN dbo.RoomRates.Overflow = 1AND dbo.RoomRates.Availability <= 5THEN 5ELSE dbo.RoomRates.AvailabilityEND) AS Availability,SUM( dbo.RoomRates.Price ) AS RoomTotalPriceFROM dbo.RoomRatesWHERE dbo.RoomRates.[Date] BETWEEN @FromDate AND @ToDateGROUP BY dbo.RoomRates.RoomID