我正在使用SQL Server 2008。 使用以下代码帮助我的代码,是否可以在同一个select语句中将column2从varchar(50)转换或转换为numeric(10,0)?这是导入选项卡式分隔文本文件的存储过程的一部分。如果我不能在select中执行此操作,我可能会创建一些中间临时表。谢谢你的帮助。
SELECT column1
, RIGHT(column2,CHARINDEX('-',REVERSE(column2))-1) as extracted
, column3
FROM myTable
有人要求提供样本数据。 column2可以将Bluebird Clinic-333作为varchar。查询的结果将是333作为数字。问题已经得到解答,但我补充说,以防有人发现它有用。
答案 0 :(得分:1)
也许?
SELECT column1
, CAST(RIGHT(column2,CHARINDEX('-',REVERSE(column2))-1) AS numeric(10,0)) as extracted
, column3
FROM myTable