我正在尝试将两列 - note
和app
从dbo.UCAST3$
缩小到列klient.appendix
这就是我尝试使用小注释缩小2列的方法:[note] + ' appendix: ' + [app]
我试过以下:
INSERT INTO dbo.klient
(name, surname, rodcis, nopass, street, zip, city, appendix, tel, fax, titul, akce, rocnik)
SELECT
[nameorig], [surnameorig], [rodcisorig], [nopassorig], [adresa], [ZIP], [place],
[note] + ' appendix: ' + [app], [telhome], [telwork], titul, '000000-00', 2014
FROM dbo.UCAST3$
我收到以下错误:
将数据类型varchar转换为数字时出错。
它似乎正在跳到下一列nopassorig
,它是数字。
任何人都可以帮我解决这个问题吗?
[note]
是decimal(30,0)
[app]
是nvarchar(255)
答案 0 :(得分:3)
请不要这样做。如果你想在SQL中再次分离这些值,这将是一个痛苦而且缓慢。
只需将SQL select语句中的值汇总到您需要的位置即可。
答案 1 :(得分:1)
您需要将[note]转换为varchar才能成功连接。
INSERT INTO dbo.klient
(name, surname,rodcis,nopass,street,zip,city,appendix,tel,fax,titul,akce,rocnik)
SELECT [nameorig], [surnameorig],[rodcisorig],
[nopassorig],[adresa],[ZIP],[place],
CAST([note] as VARCHAR(30)) + ' appendix: ' + [app],
[telhome],[telwork],titul,'000000-00',2014
FROM dbo.UCAST3$