Table1
Time
10:00:00
12:00:00
Absent
14:00:00
Holiday
...,时间列数据类型为varchar
我想检查时间列值是数字然后是'Present‘
已尝试的查询
Select case when isnumeric(time) then 'Present' else time end as time from table1在'then‘中显示错误
如何根据需要修改我的查询
需要查询帮助
发布于 2010-03-04 15:28:58
尝试使用ISDATE
如果表达式是有效的日期、时间或日期时间值,则
返回1;否则返回0。
就像这样
DECLARE @Table TABLE(
[Time] VARCHAR(50)
)
INSERT INTO @Table SELECT '10:00:00'
INSERT INTO @Table SELECT '12:00:00'
INSERT INTO @Table SELECT 'Absent'
INSERT INTO @Table SELECT '14:00:00'
INSERT INTO @Table SELECT 'Holiday'
SELECT *,
ISDATE(Time),
case when ISDATE(time) != 0 then 'Present' else time end
FROM @Tablehttps://stackoverflow.com/questions/2377491
复制相似问题