SQL Server nie może wywołać metod w dniu
Mam kolumnę DATETIME w tabeli SQL Server 2008 o nazwie ShiftDate. Chcę przekonwertować to na kolumnę DATE w zapytaniu:
SELECT ID, ScheduleID, ShiftDate, CONVERT(DATE, ShiftDate) AS ProductionDate
FROM dbo.ScheduleResults
Edytuję to zapytanie w SSMS. Jeśli uruchomię zapytanie w standardowym oknie zapytania, nie będę miał żadnych błędów. Jeśli uruchomię to w oknie edytora widoków, pojawia się błąd „Nie można wywołać metod w dniu”.
Wypróbowałem metodę CAST, ale pojawia się ten sam błąd.
SELECT ID, ScheduleID, ShiftDate, CAST(ShiftDate AS DATE) AS ProductionDate
FROM dbo.ScheduleResults
Pełny komunikat o błędzie to:
Executed SQL statement: SELECT ID, ScheduleID, ShiftDate, CAST(ShiftDate as DATE).ToString() AS ProductionDate FROM dbo.ScheduleResults
Error Source: .Net SqlClient Data Provider
Error Message: Cannot call methods on date.
Jestem skłonny myśleć, że jest to błąd w SSMS, ale chciałbym uzyskać kilka opinii od ludzi StackOverflow, jak przekonwertować kolumnę datetime do daty. Mogę łatwo przekonwertować go na kolumnę tekstową, ale nie jest to idealne rozwiązanie, ponieważ Excel nie zobaczy go jako daty.