CAST(substring(sfzh,7,8) AS SMALLDATETIME)转换出错了。
哪个大哥可以告诉我怎么写才能正确么
[解决办法]
报什么错啊 可能截取的内容是非法的日期吧
[解决办法]
是不是这个字段有些数据,你这么取了,但取出来的数据无法转换成SMALLDATETIME类型。
建议你先检查下sfzh列的数据。
[解决办法]
select CAST(substring('sfzh',7,8) AS SMALLDATETIME)
WITH test (sfzh)
AS
(SELECT 'abcdef20121015')
SELECT substring(sfzh,7,8),CAST(substring(sfzh,7,8) AS SMALLDATETIME)
FROM test
/*
-------------- -----------------------
20121015 2012-10-15 00:00:00
(1 行受影响)
*/