0

对于 SSRS 2005 报告,我如何从数据库中读取不一致的 nvarchar 数据值作为绘制折线图的一致数字十进制数据?

nvarchar 列的实验室读数以 nvarchar(15) 数据类型绘制在图表上。

数据不一致的示例列,如图所示

示例列值:00123 102 (NULL) 333 456 N/R 无结果 567 589

4

2 回答 2

2

你可以试试

SELECT CASE WHEN ISNUMERIC(nvCol) THEN CAST(nvCol as DECIMAL(15,0))
    ELSE 0.0 END as DecData
FROM YourTable

ISNUMERIC 可能对您来说太笼统了(它允许一些非常奇怪的“数字”),如果是这样,那么您可能需要添加自己的条件来过滤。您还必须正确设置 DECIMAL 的大小。最后,您可能更喜欢检查 WHERE 子句以过滤掉这些行,而不是将它们默认为 0.0。

于 2009-06-18T23:26:58.810 回答
0

使用数据库去

select convert(decimal (10,2), ltrim(rtrim(columnname))) from table where isumeric(columnname) = 1 and ltrim(rtrim(columnname)) <> '.'

于 2009-06-19T02:25:13.443 回答