У меня есть представление, которое получает данные из интернет-базы данных. Представление, которое я создал, работает, но когда нет данных (NULL), мне нужно вернуть 00:00. Как мне этого добиться?
Используя SSMS, я получаю время начала забронированных ресурсов. Я уже понял их правильно. Но иногда он возвращает NULL. Я искал в Интернете и уже пытался исправить это, но это не сработает.
SELECT
CASE WHEN COUNT(1) > 0
THEN SUBSTRING(CONVERT(VARCHAR, MIN(DATEADD(hour, - 1, dbo.GetEventCustomData(dbo.events.id, N'algemeneinfo_startvoorstelling'))), 108), 1, 5)
ELSE '00:00'
END AS Start,
CASE WHEN COUNT(1) > 0
THEN SUBSTRING(CONVERT(VARCHAR, MAX(dbo.GetEventCustomData(dbo.events.id, N'algemeneinfo_eindevoorstelling')), 108), 1, 5)
ELSE '00:00'
END AS Einde
FROM
dbo.events
INNER JOIN
dbo.EventScheduleEntry ON dbo.events.id = dbo.EventScheduleEntry.eventid
INNER JOIN
dbo.Locations ON dbo.events.locations = dbo.Locations.id
INNER JOIN
dbo.Profiles ON dbo.events.profile = dbo.Profiles.id
WHERE
(dbo.Locations.name = N'studio')
AND (dbo.EventScheduleEntry.starttime > CONVERT(date, GETDATE()))
AND (dbo.EventScheduleEntry.starttime < CONVERT(date, DATEADD(day, 1, GETDATE())))
AND (dbo.events.status = N'bevestiging')
AND (dbo.Profiles.name <> N'buffer')
Я ожидаю, что когда представление вернет NULL, вместо этого будет возвращено 00:00.