Piszę tego posta, żeby się upewnić.
Podczas samego selecta jest wszystko ok.
Ae gdy robię insert z tego selecta dostaję warning:
"Null value is eliminated by an aggregate or other SET operation"
W tabeli, do której robię Insert dane pole pozwala na przyjęcie Null.
Mój select wygląda tak(nie próbujcie za bardzo rozkminiać):
select fi.ID, max(ev.date) as lastOut
from firstIns fi
left join endDates ed on ed.fiID = fi.ID
left join V_Events ev on ev.employeeID = fi.EmployeeID and
dbo.get_date(ev.date) = dbo.get_date(ed.endDate)
group by fi.id
order by fi.ID
ev.date może być czasami nullem i podejrzewam, że to przez to dostaję ten komunikat(ale czymu tylko podczas insertu, a nie podczas samego selectu?).
Wiem, że mogę to ominąć na dwa sposoby, pierwszy:
zamiast max(ev.date) dać: max(isNull(ev.date, 0)). Jednak wtedy w tabeli nie mam żadnego nulla, tylko pierwszą datę, a to mi nieco komplikuje.
Drugim sposobem jest wyłączenie warningów i włączenie ich po insercie.
Skoro potrzebuję mieć te nulle w tabeli, to czy mogę bez obaw wyłączyć komunikaty na czas insertu? Czy może jest jeszcze inny, lepszy sposób?