转换成时间格式??

yaoyaogghaha 2006-06-09 02:10:05
有一字段如下:(字段类型为varchar)
requestday
----------
2000/1/
2006/6/8
2006/6/8
2006/6/8
NULL
我想让这个字段如果是里面的值是时间格式的话就让它显示出来,如果不是的话就让它为NULL
我想要的结果如下:
select requestday from table

requestday
----------
null
2006/6/8
2006/6/8
2006/6/8
NULL
请问用什么函数来判断,写成SQL语句
...全文
131 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
dssw 2006-06-09
  • 打赏
  • 举报
回复
用 isdate () 函数,1 表示 格式正确, 0 表示不是.
xeqtr1982 2006-06-09
  • 打赏
  • 举报
回复
declare @T table(requestday varchar(10))
insert into @t select '2000/1/'
union all select '2006/6/8'
union all select '2006/6/8'
union all select '2006/6/8'
union all select NULL

select case when isdate(requestday)=1 then requestday else null end as requestday from @t

--ISNUMERIC函数有些bug,不知道这个有没有

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧