【发布时间】:2016-01-20 03:42:08
【问题描述】:
如果我运行下面的 SQL 查询;我收到以下错误:
将数据类型 nvarchar 转换为数值时出错。
COLUMNA 仅包含数字(负数和正数),包括在小数点后最多两位数的字段,并存储为点十进制数。
IF OBJECT_ID('st00_TABLEA','U') IS NOT NULL DROP TABLE [st00_TABLEA]
SELECT
COLUMNA AS COLUMNA_s
,CASE WHEN [COLUMNA] = '' THEN 0 ELSE CONVERT(NUMERIC(18,2),REPLACE([COLUMNA],',','.')) END AS COLUMNA
INTO st00_TABLEA
FROM dbosu.TABLEA;
我也尝试了以下,但仍然是同样的问题:
IF OBJECT_ID('st00_TABLEA','U') IS NOT NULL DROP TABLE [st00_TABLEA]
SELECT
COLUMNA AS COLUMNA_s
,CONVERT(DECIMAL(18,2),COLUMNA) AS COLUMNA
INTO st00_TABLEA
FROM dbosu.TABLEA;
【问题讨论】:
标签: sql-server type-conversion