发布网友 发布时间:2022-04-24 20:43
共5个回答
懂视网 时间:2022-04-08 06:33
使用CONVERT:
CONVERT(data_type[(length)],expression,[style])
例:
CONVERT(VARCHAR(25),GETDATE(),120)
120 或者 20 yyyy-mm-dd hh:mi:ss(24h) {2012-08-12 17:26:11}
121 或者 21 yyyy-mm-dd hh:mi:ss.mmm(24h) {2012-08-12 17:26:11.000}
Style ID | Style 格式 |
---|---|
100 或者 0 | mon dd yyyy hh:miAM (或者 PM) |
101 | mm/dd/yy |
102 | yy.mm.dd |
103 | dd/mm/yy |
104 | dd.mm.yy |
105 | dd-mm-yy |
106 | dd mon yy |
107 | Mon dd, yy |
108 | hh:mm:ss |
109 或者 9 | mon dd yyyy hh:mi:ss:mmmAM(或者 PM) |
110 | mm-dd-yy |
111 | yy/mm/dd |
112 | yymmdd |
113 或者 13 | dd mon yyyy hh:mm:ss:mmm(24h) |
114 | hh:mi:ss:mmm(24h) |
120 或者 20 | yyyy-mm-dd hh:mi:ss(24h) |
121 或者 21 | yyyy-mm-dd hh:mi:ss.mmm(24h) |
126 | yyyy-mm-ddThh:mm:ss.mmm(没有空格) |
130 | dd mon yyyy hh:mi:ss:mmmAM |
131 | dd/mm/yy hh:mi:ss:mmmAM |
SQL2008-字符转数字CAST和CONVERT
标签:
热心网友 时间:2022-04-08 03:41
先检查金额列的数据是否都符合小数规范,转为数字格式只有是数字的字符串才能转,如000012转为12,.55转为0.55,若是个英文符号等字符转了就报无效数字类型的错。
转换的方式很多,但是字符串转换成数字的前提是字符串中只包含了数字或者小数点。
可使用convert函数,cast 和convert可以显式转换数据类型,在某些情况下SQL会根据实际情况自动转换!不过建议显式的转换一下,这样的话可读性高一点!
因为字符串不一定能转换成数字,所以用上面的,加上错误处理比较。
例子:
declare @a varchar(10)
set @a='as23'
select case when isnumeric(@a)=1 then cast(@a as int) else null end
set @a='23'
select case when isnumeric(@a)=1 then cast(@a as int) else null end
结果:
declare @a varchar(10)
set @a='as23'
select case when isnumeric(@a)=1 then cast(@a as int) else null end
set @a='23'
select case when isnumeric(@a)=1 then cast(@a as int) else null end
热心网友 时间:2022-04-08 04:59
to_number()转为数字格式热心网友 时间:2022-04-08 06:34
cast('111' as int) 不过首先你得判断是不是 数字 isnumber('111')=1 是数字 =0 不是数字热心网友 时间:2022-04-08 08:25
int i = new Integer("2");