如何将HH:MM:SS转换为HH:MM

时间:2016-02-29 09:28:16

标签: sql sql-server sql-server-2008

我有问题。在我的前端UI用户输入的时间类似于 12:21 ,当我在SQL服务器数据库中更新它显示为 12:21:23 时间存储在 DATETIME_PARAM COLUMN我应该添加转换还是其他任何进程来限制值?

代码

UPDATE A SET 
                A.SYNCOPERATION = 'U',
                A.VERSION = A.VERSION + 1,
                A.SYNCVERSION = DBO.GetCountryDate(),
                A.PAR_VALUE3 = CASE @VALUE WHEN '' THEN NULL ELSE @VALUE END,
                A.DATETIME_PARAM = CASE @JITTIME WHEN '' THEN NULL ELSE @JITTIME END

2 个答案:

答案 0 :(得分:0)

您可以尝试这样:

CONVERT(VARCHAR(5),DateCol, 108)

即,您可以使用CONVERT函数来限制数据库本身的HH:MM格式的时间。(假设您在日期时间列中不需要第二个部分

修改

在你的情况下,你可以把它像

A.DATETIME_PARAM = CASE @JITTIME WHEN '' THEN NULL ELSE CONVERT(VARCHAR(5),@JITTIME, 108)  END

答案 1 :(得分:0)

试试这个

....
A.PAR_VALUE3 = NULLIF(@VALUE, ''),
A.DATETIME_PARAM = LEFT(NULLIF(@JITTIME, ''), 5)

不要忘记在该更新上放置WHERE子句