Как переместить десятичные знаки - PullRequest
0 голосов
/ 17 октября 2019

Я хочу поместить десятичную дробь между первой и второй цифрой процентной ставки и оставить после 2 десятичный знак. Как мне это сделать?

SELECT TOP 10 l.PARENTACCOUNT AS [Account Number]
        , l.interestrate AS [Interest Rate]
FROM dbo.LOAN l

The current result

Desired Result

Ответы [ 3 ]

5 голосов
/ 17 октября 2019

Странный формат;Вы не можете обрабатывать процентные ставки менее 1%.

Вы можете сделать:

select convert(decimal(4, 2), stuff(convert(varchar(255), interestrate), 2, 0, '.'))

Это преобразует значение в число, добавляет десятичное место и преобразует в десятичное число.

Здесь - это дБ <> скрипка.

1 голос
/ 17 октября 2019

Вы пытались разделить на 1000:

SELECT TOP 10 l.PARENTACCOUNT AS [Account Number]
       , (l.interestrate/1000) AS [Interest Rate] FROM dbo.LOAN l
0 голосов
/ 17 октября 2019

Предполагая, что процентная ставка является строкой. Вы можете попробовать:

SELECT CONVERT(real,CONCAT(LEFT([Interest rate],1),'.', RIGHT([Interest rate],LEN([Interest rate])-1))) FROM [Table]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...