请教各位高手,转换出错...
各位,新年好!
原表如下:
XH CJX CJ
012345678901 X100 88.00
012345678901 Y200 45.00
012345678901 Z500 106.05
012345678902 X100 100.00
012345678902 Z300 90.00
....
想把上表中的数据换成如下(里面不能有null,CJX有很多的):
xh X100 Y200 Z300 Z500
012345678901 88.00 45.00 106.05
012345678902 100.00 90.00
用如下行列转换代码为什么错误?
IF object_id('tb') is not null
DROP TABLE tb
go
create table tb(xh char(12) ,cjx char(10), cj numeric(6,2))
insert into tb values ('012345678901','X100',88.00)
insert into tb values ('012345678901','Y200',45.00)
insert into tb values ('012345678901','Z500',106.05)
insert into tb values ('012345678902','X100',100.00)
insert into tb values ('012345678902','Z300',90.00)
-- select * from tb
declare @sql varchar(8000)
set @sql=''
select @sql=@sql+',max(case when cjx='''+cjx+''' then cj else '''' end) as '+cjx
from tb
group by cjx
select @sql='select xh'+@sql+' into Temp from tb group by xh'
exec(@sql)
-- select * from Temp
提示:从数据类型 varchar 转换为 numeric 时出错。
原表如下:
XH CJX CJ
012345678901 X100 88.00
012345678901 Y200 45.00
012345678901 Z500 106.05
012345678902 X100 100.00
012345678902 Z300 90.00
....
想把上表中的数据换成如下(里面不能有null,CJX有很多的):
xh X100 Y200 Z300 Z500
012345678901 88.00 45.00 106.05
012345678902 100.00 90.00
用如下行列转换代码为什么错误?
IF object_id('tb') is not null
DROP TABLE tb
go
create table tb(xh char(12) ,cjx char(10), cj numeric(6,2))
insert into tb values ('012345678901','X100',88.00)
insert into tb values ('012345678901','Y200',45.00)
insert into tb values ('012345678901','Z500',106.05)
insert into tb values ('012345678902','X100',100.00)
insert into tb values ('012345678902','Z300',90.00)
-- select * from tb
declare @sql varchar(8000)
set @sql=''
select @sql=@sql+',max(case when cjx='''+cjx+''' then cj else '''' end) as '+cjx
from tb
group by cjx
select @sql='select xh'+@sql+' into Temp from tb group by xh'
exec(@sql)
-- select * from Temp
提示:从数据类型 varchar 转换为 numeric 时出错。
...全文
相关推荐
从数据类型 nvarchar 转换为 numeric 时出错.pdf
如果nvarchar类型的字段中包含非数字的字符,那么在转换为numeric时就会出错。知识点二:用友T+软件的使用用友T+是一款企业管理软件,主要用于企业财务管理、进销存管理等方面。
速达5000进销存结账提示数据转换出错替换文件
当用户尝试进行结账操作时,系统返回“数据转换出错”的错误信息,这通常意味着在处理或转换数据库中的数据时出现了问题。数据转换出错可能是由多种原因导致的:1.
解析SQL Server中SQL日期转换出错的原因
编写健壮的SQL语句至关重要,尤其是在涉及日期转换时。
使用JSON.parse将json字符串转换成json对象的时候会出错
在对数据库取出来的数据(特别是描述信息)里面含有特殊字符的话,使用JSON.parse将json字符串转换成json对象的时候会出错,主要是双引号,回车换行等影响明显,左尖括号和右尖括号也会导致显示问
计算机组成原理习题答案
**可靠性高**:由于二进制数制只包含两个数字,所以在信息传输过程中出错的概率较低,易于检测和纠正错误。3.


疑难问题
