SQL怎么样把numeric类型的数据转换为varchar类型的数据

如题所述

1、首先输入代码:SELECT CAST(ID AS INTEGER) FROM A。

2、然后输入代码:SELECT CAST(ID AS INT) FROM A。

3、然后再输入代码:SELECT CAST(ID AS DECIMAL(18,X)) FROM A ,X指小数位,如果想保留2位小数则是2,如果不保留小数位则是0 ,这样就完成了。

温馨提示:内容为网友见解,仅供参考
第1个回答  2020-04-14

可以用cast来转换。

如:列名叫grade,表名为A select cast(grade as numeric(y,x)) from A 其中y代表数据长度,x代表小数位长度。

注意:grade中必须全为数字或小数点,如果存在中文或英文,则运行时会报错。

使用CAST函数进行数据类型转换时,在下列情况下能够被接受:

(1)两个表达式的数据类型完全相同。

(2)两个表达式可隐性转换。

(3)必须显式转换数据类型。

扩展资料

SQL中类型转换函数:

1、cast

cast(表达式 as 数据类型)

select 100.0 +cast('1000' as int)  -- 1100.0 默认把字符串转换成浮整形。

2、convert

convert(数据类型,表达式)

select 100.0 + convert(int,'1000')-- 1100.0 默认把字符串转换成整形。

3、select * from student  order by  convert (int,bid) desc --bid列按照降序来排列,bid是varchar类型。

4、print convert(varchar(10),getdate(),120) --日期转换varchar(10)表示显示的字符长度,120表示style,可以在SSMS 帮助中查看详情。

5、cast不可以转换日期类型,convert可以通用。

本回答被网友采纳
第2个回答  推荐于2016-06-17

CAST 和 CONVERT

将某种数据类型的表达式显式转换为另一种数据类型。CAST 和 CONVERT 提供相似的功能。


语法:

--使用 CAST:

CAST ( expression AS data_type )


--使用 CONVERT:

CONVERT (data_type[(length)], expression [, style])


参数:expression

是任何有效的 Microsoft® SQL Server™ 表达式。有关更多信息,请参见表达式。

            data_type

目标系统所提供的数据类型,包括 bigint 和 sql_variant。不能使用用户定义的数据类型


numeric转varchar

CONVERT(varchar(200),列名或者变量)

CAST(列名或者变量 AS varchar(200));

本回答被提问者采纳
第3个回答  2014-12-21

cast函数就行啊

select cast(字段 as numeric(10,2)) from 表名

(10,2)那个你参照你自己字段的具体内容修改吧,2是小数位,10是一共的长度

第4个回答  2015-09-11
1:convert(varchar,字段)
2:cast(字段 as varchar)
两种都可以

SQL怎么样把numeric类型的数据转换为varchar类型的数据
1、首先输入代码:SELECT CAST(ID AS INTEGER) FROM A。2、然后输入代码:SELECT CAST(ID AS INT) FROM A。3、然后再输入代码:SELECT CAST(ID AS DECIMAL(18,X)) FROM A ,X指小数位,如果想保留2位小数则是2,如果不保留小数位则是0 ,这样就完成了。

SQL怎么样把numeric类型的数据转换为varchar类型的数据
将某种数据类型的表达式显式转换为另一种数据类型。CAST 和 CONVERT 提供相似的功能。语法:--使用 CAST:CAST ( expression AS data_type )--使用 CONVERT:CONVERT (data_type[(length)], expression [, style])参数:expression 是任何有效的 Microsoft® SQL Server™ 表达式。有关更多...

SQL怎么样把numeric类型的数据转换为varchar类型的数据
select cast(1 as varchar(1))

SQL怎么样把numeric类型的数据转换为varchar类型的数据
STR (float_expression[ ,length[ ,decimal] ] )

SQL怎么样把numeric类型的数据转换为varchar类型的数据
,4),right(str(10000+cast(rand()*10 as int)*100+cast(rand()*10 as int)*1000+cast(rand()*10 as int)*10+cast(rand()*10 as int),5),4)下面的方法简单些 select right(str(10000+cast(rand()*10000 as int),5),4),right(str(10000+cast(rand()*10000 as int),5),4)

在SQL语句里面如何将字符型转换成数字型?
先检查金额列的数据是否都符合小数规范,用cast(金额 as decimal(10,4))>500或者 convert(decimal(10,4),金额)>500 注:decimal的长度和小数位数根据自己需要设定 sql中将字符串数字转换成数字:方法一:SELECT CAST('123' AS SIGNED integer);方法二:SELECT CONVERT('123',SIGNED);方法三:SELECT...

sql语句中怎样将字符类型转换成数字类型
可使用convert函数,cast 和convert可以显式转换数据类型,在某些情况下SQL会根据实际情况自动转换!不过建议显式的转换一下,这样的话可读性高一点!因为字符串不一定能转换成数字,所以用上面的,加上错误处理比较。例子:declare @a varchar(10)set @a='as23'select case when isnumeric(@a)=1 then ...

SQL 数据类型转换 日期由数字型numeric(18, 0)转换为datetime型
第一步:你做错了,他们给的这个数据类型根据你的需求根本用不着更改为datetime,为什么会变成这样也是因为这个数据根本就不能转成datetime模式 \/* 接下来。。。重新恢复你的数据类型为 numeric(18, 0) 看数据能不能恢复原来的样子 或着用下面二位的用法,再根据year和month取值,我建议先试前面一...

SQL 关于NUMERIC类型数据的修改语句
很明显,你的A表B列不是numeric类型,而是varchar型的,你用这句试试看:update A set b=cast(66.0 as varchar(10)) where id=1

求教大神,将numeric类型的数据转换成varchar(20)的是不是会出错啊?_百...
你数据库字段a 是numeric类型的,update在sqlserver中实际上是先进行删除操作,再执行插入操作。用cast函数转化a为varchar类型插入到numeric类型的a字段中当然会报错。

相似回答