У меня есть один столбец с DateTime, и мне нужно состояние каждого сайта с помощью запроса выбора SQL, как я пытался из запроса ниже.
при выполнении запроса появляется ошибка - «TIMESTAMPDIFF» не является распознанным именем встроенной функции. »
SELECT co.controllerid,
co.controllerno,
co.ControllerName,
co.SerialNo,
co.MACAddress,
c.HBLatestDateTime,
c.TrnxLatestDateTime,
'STATUS' AS STAT,
CASE
WHEN TIMESTAMPDIFF(MINUTE, c.HBLatestDateTime, GETDATE()) <= 5 THEN 'online'
WHEN (TIMESTAMPDIFF(MINUTE, c.HBLatestDateTime, GETDATE()) > 720
AND TIMESTAMPDIFF(MINUTE, c.HBLatestDateTime, GETDATE()) <= 30) THEN 'idle'
ELSE 'offline'
END AS user_status
FROM Controllers AS co
INNER JOIN Controllersruntime AS c ON c.ControllerID = co.ControllerID
AND co.Markdeleted != 1
WHERE HBLatestDateTime = CONVERT(date, GETDATE())
ORDER BY co.ControllerName ASC;