Я попытался преобразовать строку с десятичной точкой в ЦИФРОВУЮ.При преобразовании этого я получил целочисленное значение как округление.Я не хочу получать это целое число как округленное значение.
Случай 1: Например:
DECLARE @val varchar(10);
SET @val = 454.6;
SELECT (CASE WHEN ISNUMERIC( CAST( @val AS VARCHAR(MAX) ) ) = 1 THEN
CAST( CAST( @val AS VARCHAR(MAX) ) AS NUMERIC ) ELSE NULL END)
Если я запусту это, я получузначение в виде округленного целого числа как 455 .
Но мне нужно значение как 454 , избегая округленного целого числа.
Случай 2 :
Если я преобразовал это значение из строки в целое число, я получил проблему, как показано ниже:
Ошибка: SQLSTATE [22018]: [Microsoft] [Собственный клиент SQL Server 11.0] [SQL Server] Преобразование не удалось при преобразовании значения varchar '454.6' в тип данных int.
Пожалуйста, дайте мне знать, если у кого-то есть идеи по этому поводу,
Спасибо, Matheswaran.S