SQLite - удалить десятичный из столбца - PullRequest
0 голосов
/ 08 мая 2018

Я пытаюсь удалить десятичное место из всех значений в столбце nvarchar (55) в SQLite (используя Aqua Data Studio). У всех полей есть .0 в конце, который я пытаюсь удалить, не округляя другие цифры.

Пример: 123456.0 Желаемый: 123456

Я попробовал следующее и получаю эту ошибку: 'Преобразование не удалось при преобразовании значения nvarchar' 8514838.0 'в тип данных int.'

SELECT cast(column as int) from data

Есть ли другой способ удалить только конечные десятичные дроби без округления?

1 Ответ

0 голосов
/ 09 мая 2018
UPDATE
    tableName
SET
    column = SUBSTRING( column, 1, LEN( column ) - 2 )
WHERE
    column LIKE '%.0'

В SQL Server строковые индексы основаны на 1, поэтому SUBSTRING( s, 1, n ) возвращает все n символов строки с начала.

...