Как я могу прочитать противоречивые данные nvarchar как десятичные данные - PullRequest
0 голосов
/ 19 июня 2009

Для SSRS 2005 отчета о том, как прочитать непоследовательные nvarchar значения данных из базы данных в виде согласованных числовых десятичных данных для построения линейного графика?

столбец nvarchar имеет лабораторные показания, которые должны быть нанесены на график как nvarchar(15) тип данных.

образец столбца с противоречивыми данными, как показано

columnvalues
00123
102
(NULL)
333
456
N/R
No Result
567
589

Ответы [ 2 ]

0 голосов
/ 19 июня 2009

Предполагается, что ваша таблица - LabData, а числовой столбец - LabReading:

SELECT
    LabReadingValue =
        CASE 
            WHEN ISNUMERIC(LabReading)=1
            THEN CAST(LabReading AS DECIMAL(15,4))
            ELSE NULL 
        END
FROM
    LabData

Если вы хотите отфильтровать нечисловые значения, вы можете добавить:

WHERE ISNUMERIC(LabReading)=1
0 голосов
/ 19 июня 2009

Мой босс помог мне с этим запросом. Вы можете добавить дополнительные пункты в конце следующего запроса в зависимости от несоответствий в ваших данных.

использовать базу данных идти выберите конвертировать (десятичное (10,2), ltrim (rtrim (имя столбца))) из таблицы где isnumeric (имя столбца) = 1 и ltrim (rtrim (имя столбца)) <> '.'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...