fwstealer
asked on
how do I only show the record with the max note created date?
SELECT tl_Aircraft.Registration, tm_AircraftDutySchedules.A ircraftDut yScheduleI D, tm_AircraftDutySchedules.A ircraftID, tm_AircraftDutySchedules.S tartAirpor tID,
tm_AircraftDutySchedules.E ndAirportI D, tm_AircraftDutySchedules.A ircraftDut yLookupID, tm_AircraftDutySchedules.S tartTime, tm_AircraftDutySchedules.E ndTime,
tm_AircraftDutySchedules.S tartTimeLo cal, tm_AircraftDutySchedules.E ndTimeLoca l, tm_AircraftDutySchedules.H asUserNote s, tm_AircraftDutySchedules.D escription ,
tm_AircraftDutySchedules.I sTraxManag ed, tm_AircraftDutySchedules.B WAircraftM aintenance NoteID, tm_AircraftDutySchedules.S tartVendor ID,
tm_AircraftDutySchedules.E ndVendorID , tm_AircraftDutySchedules.O rigStartTi me, tm_AircraftDutySchedules.O rigEndTime , tm_Notes.NoteTypeID,
tm_Notes.DateCreated, tm_Notes.NoteText, tm_Notes.isactive,
datediff(mi,origstarttime, starttime) as TotalMinMoved
FROM tm_AircraftDutySchedules INNER JOIN
tl_Aircraft ON tm_AircraftDutySchedules.A ircraftID = tl_Aircraft.AircraftID INNER JOIN
tm_Notes ON tm_AircraftDutySchedules.A ircraftDut yScheduleI D = tm_Notes.EntityKeyID
WHERE (tm_AircraftDutySchedules. StartTime <> tm_AircraftDutySchedules.O rigStartTi me) AND (tm_AircraftDutySchedules. StartTime >= GETDATE())
and (notetext like '%This aircraft schedule was auto-delayed%')
order by tl_Aircraft.Registration asc
I tried max on tm_Notes.DateCreated but didn't have any luck.
tm_AircraftDutySchedules.E
tm_AircraftDutySchedules.S
tm_AircraftDutySchedules.I
tm_AircraftDutySchedules.E
tm_Notes.DateCreated, tm_Notes.NoteText, tm_Notes.isactive,
datediff(mi,origstarttime,
FROM tm_AircraftDutySchedules INNER JOIN
tl_Aircraft ON tm_AircraftDutySchedules.A
tm_Notes ON tm_AircraftDutySchedules.A
WHERE (tm_AircraftDutySchedules.
and (notetext like '%This aircraft schedule was auto-delayed%')
order by tl_Aircraft.Registration asc
I tried max on tm_Notes.DateCreated but didn't have any luck.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
...unchanged...
FROM tm_AircraftDutySchedules INNER JOIN
tl_Aircraft ON tm_AircraftDutySchedules.A ircraftID = tl_Aircraft.AircraftID INNER JOIN (
SELECT *, ROW_NUMBER() OVER (PARTITION BY EntityKeyID ORDER BY DateCreated DESC) AS rownum
FROM tm_Notes tm_Notes_Rownum) AS
tm_Notes ON tm_AircraftDutySchedules.A ircraftDut yScheduleI D = tm_Notes.EntityKeyID AND tm_Notes.rownum = 1
...unchanged...
FROM tm_AircraftDutySchedules INNER JOIN
tl_Aircraft ON tm_AircraftDutySchedules.A
SELECT *, ROW_NUMBER() OVER (PARTITION BY EntityKeyID ORDER BY DateCreated DESC) AS rownum
FROM tm_Notes tm_Notes_Rownum) AS
tm_Notes ON tm_AircraftDutySchedules.A
...unchanged...
Here is another variation
SELECT tl_Aircraft.Registration, tm_AircraftDutySchedules.AircraftDutyScheduleID, tm_AircraftDutySchedules.AircraftID, tm_AircraftDutySchedules.StartAirportID,
tm_AircraftDutySchedules.EndAirportID, tm_AircraftDutySchedules.AircraftDutyLookupID, tm_AircraftDutySchedules.StartTime, tm_AircraftDutySchedules.EndTime,
tm_AircraftDutySchedules.StartTimeLocal, tm_AircraftDutySchedules.EndTimeLocal, tm_AircraftDutySchedules.HasUserNotes, tm_AircraftDutySchedules.Description,
tm_AircraftDutySchedules.IsTraxManaged, tm_AircraftDutySchedules.BWAircraftMaintenanceNoteID, tm_AircraftDutySchedules.StartVendorID,
tm_AircraftDutySchedules.EndVendorID, tm_AircraftDutySchedules.OrigStartTime, tm_AircraftDutySchedules.OrigEndTime, tm_Notes.NoteTypeID,
tm_Notes.DateCreated, tm_Notes.NoteText, tm_Notes.isactive,
datediff(mi,origstarttime,starttime) as TotalMinMoved
FROM tm_AircraftDutySchedules
INNER JOIN tl_Aircraft ON tm_AircraftDutySchedules.AircraftID = tl_Aircraft.AircraftID
INNER JOIN (select EntityKeyID, max(DateCreated) DateCreated from tm_Notes group by AircraftDutyScheduleID) A on tm_AircraftDutySchedules.AircraftDutyScheduleID = A.EntityKeyID
INNER JOIN tm_Notes ON A.EntityKeyID = tm_Notes.EntityKeyID and A.DateCreated = tm_Notes.DateCreated
WHERE (tm_AircraftDutySchedules.StartTime <> tm_AircraftDutySchedules.OrigStartTime)
AND (tm_AircraftDutySchedules.StartTime >= GETDATE())
and (notetext like '%This aircraft schedule was auto-delayed%')
order by tl_Aircraft.Registration asc
correction
SELECT tl_Aircraft.Registration, tm_AircraftDutySchedules.AircraftDutyScheduleID, tm_AircraftDutySchedules.AircraftID, tm_AircraftDutySchedules.StartAirportID,
tm_AircraftDutySchedules.EndAirportID, tm_AircraftDutySchedules.AircraftDutyLookupID, tm_AircraftDutySchedules.StartTime, tm_AircraftDutySchedules.EndTime,
tm_AircraftDutySchedules.StartTimeLocal, tm_AircraftDutySchedules.EndTimeLocal, tm_AircraftDutySchedules.HasUserNotes, tm_AircraftDutySchedules.Description,
tm_AircraftDutySchedules.IsTraxManaged, tm_AircraftDutySchedules.BWAircraftMaintenanceNoteID, tm_AircraftDutySchedules.StartVendorID,
tm_AircraftDutySchedules.EndVendorID, tm_AircraftDutySchedules.OrigStartTime, tm_AircraftDutySchedules.OrigEndTime, tm_Notes.NoteTypeID,
tm_Notes.DateCreated, tm_Notes.NoteText, tm_Notes.isactive,
datediff(mi,origstarttime,starttime) as TotalMinMoved
FROM tm_AircraftDutySchedules
INNER JOIN tl_Aircraft ON tm_AircraftDutySchedules.AircraftID = tl_Aircraft.AircraftID
INNER JOIN (select EntityKeyID, max(DateCreated) DateCreated from tm_Notes group by EntityKeyID) A on tm_AircraftDutySchedules.AircraftDutyScheduleID = A.EntityKeyID
INNER JOIN tm_Notes ON A.EntityKeyID = tm_Notes.EntityKeyID and A.DateCreated = tm_Notes.DateCreated
WHERE (tm_AircraftDutySchedules.StartTime <> tm_AircraftDutySchedules.OrigStartTime)
AND (tm_AircraftDutySchedules.StartTime >= GETDATE())
and (notetext like '%This aircraft schedule was auto-delayed%')
order by tl_Aircraft.Registration asc
ASKER
scott - not quite following you on that
ewangoya - that query returned no rows
ewangoya - that query returned no rows
SELECT tl_Aircraft.Registration, tm_AircraftDutySchedules.A ircraftDut yScheduleI D, tm_AircraftDutySchedules.A ircraftID, tm_AircraftDutySchedules.S tartAirpor tID,
tm_AircraftDutySchedules.E ndAirportI D, tm_AircraftDutySchedules.A ircraftDut yLookupID, tm_AircraftDutySchedules.S tartTime, tm_AircraftDutySchedules.E ndTime,
tm_AircraftDutySchedules.S tartTimeLo cal, tm_AircraftDutySchedules.E ndTimeLoca l, tm_AircraftDutySchedules.H asUserNote s, tm_AircraftDutySchedules.D escription ,
tm_AircraftDutySchedules.I sTraxManag ed, tm_AircraftDutySchedules.B WAircraftM aintenance NoteID, tm_AircraftDutySchedules.S tartVendor ID,
tm_AircraftDutySchedules.E ndVendorID , tm_AircraftDutySchedules.O rigStartTi me, tm_AircraftDutySchedules.O rigEndTime , tm_Notes.NoteTypeID,
tm_Notes.DateCreated, tm_Notes.NoteText, tm_Notes.isactive,
datediff(mi,origstarttime, starttime) as TotalMinMoved
FROM tm_AircraftDutySchedules INNER JOIN
tl_Aircraft ON tm_AircraftDutySchedules.A ircraftID = tl_Aircraft.AircraftID INNER JOIN (
SELECT *, ROW_NUMBER() OVER (PARTITION BY EntityKeyID ORDER BY DateCreated DESC) AS rownum
FROM tm_Notes tm_Notes_Rownum) AS
tm_Notes ON tm_AircraftDutySchedules.A ircraftDut yScheduleI D = tm_Notes.EntityKeyID AND tm_Notes.rownum = 1
WHERE (tm_AircraftDutySchedules. StartTime <> tm_AircraftDutySchedules.O rigStartTi me) AND (tm_AircraftDutySchedules. StartTime >= GETDATE())
and (notetext like '%This aircraft schedule was auto-delayed%')
order by tl_Aircraft.Registration asc
tm_AircraftDutySchedules.E
tm_AircraftDutySchedules.S
tm_AircraftDutySchedules.I
tm_AircraftDutySchedules.E
tm_Notes.DateCreated, tm_Notes.NoteText, tm_Notes.isactive,
datediff(mi,origstarttime,
FROM tm_AircraftDutySchedules INNER JOIN
tl_Aircraft ON tm_AircraftDutySchedules.A
SELECT *, ROW_NUMBER() OVER (PARTITION BY EntityKeyID ORDER BY DateCreated DESC) AS rownum
FROM tm_Notes tm_Notes_Rownum) AS
tm_Notes ON tm_AircraftDutySchedules.A
WHERE (tm_AircraftDutySchedules.
and (notetext like '%This aircraft schedule was auto-delayed%')
order by tl_Aircraft.Registration asc
Did you try gohord's solution?
I think he has it the correct way.
Ashok
I think he has it the correct way.
Ashok
tm_AircraftDutySchedules.E
tm_AircraftDutySchedules.S
tm_AircraftDutySchedules.I
tm_AircraftDutySchedules.E
tm_Notes.DateCreated, tm_Notes.NoteText, tm_Notes.isactive,
datediff(mi,origstarttime,
ROW_NUMBER() over (Order by tm_Notes.DateCreated DESC) as Instance_Counter
FROM tm_AircraftDutySchedules INNER JOIN
tl_Aircraft ON tm_AircraftDutySchedules.A
tm_Notes ON tm_AircraftDutySchedules.A
WHERE (tm_AircraftDutySchedules.
and (notetext like '%This aircraft schedule was auto-delayed%')
order by tm_Notes.DateCreated desc