powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Вопрос о преобразовании NUMERIC
7 сообщений из 7, страница 1 из 1
Вопрос о преобразовании NUMERIC
    #40035554
Alex_Fox_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет!

Немного в ступоре почему

select CAST(18.900 AS NUMERIC(10,5)) работает,

а select CAST(18.900 AS NUMERIC(6,5)) выдаёт ошибку?

Хотя в обеих ситуациях precision <6 символов
...
Рейтинг: 0 / 0
Вопрос о преобразовании NUMERIC
    #40035557
4es
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
4es
Гость
Alex_Fox_
Всем привет!

Немного в ступоре почему

select CAST(18.900 AS NUMERIC(10,5)) работает,

а select CAST(18.900 AS NUMERIC(6,5)) выдаёт ошибку?

Хотя в обеих ситуациях precision <6 символов

NUMERIC(6,5) подразумевает, что слева от запятой у вас один значащий символ. Число 18 явно не тянет на один знак.
...
Рейтинг: 0 / 0
Вопрос о преобразовании NUMERIC
    #40035558
Фотография ptr128
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Fox_,

precision - точность. Количество десятичных знаков справа от десятичной точки (запятой).
А слева в первом примере 5 знаков (10-5) и число в них помещается.
Во втором примере слева только 1 знак (6-5) и число в них никак поместиться не может.
...
Рейтинг: 0 / 0
Вопрос о преобразовании NUMERIC
    #40035744
Alex_Fox_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всё равно не понимаю...

Почему 6,5 - это один символ слева? Тут же 6, а не 1
При том, что select CAST(18.900 AS NUMERIC(7,5)) уже отрабатывает.

В чём принципиальная разница между 6 и 7 ?
...
Рейтинг: 0 / 0
Вопрос о преобразовании NUMERIC
    #40035745
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Fox_
Всё равно не понимаю...

Почему 6,5 - это один символ слева? Тут же 6, а не 1
При том, что select CAST(18.900 AS NUMERIC(7,5)) уже отрабатывает.

В чём принципиальная разница между 6 и 7 ?


(Y)
...
Рейтинг: 0 / 0
Вопрос о преобразовании NUMERIC
    #40035753
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Fox_

Почему 6,5 - это один символ слева? Тут же 6, а не 1
При том, что select CAST(18.900 AS NUMERIC(7,5)) уже отрабатывает.

В чём принципиальная разница между 6 и 7 ?

еще раз, 5 -- сколько знаков справа от запятой.
6 -- сколько всего знаков.
если всего 6, из них справа 5, то слева 1.
если всего 7, из них справа 5, то слева 2.
слева надо вместить 18, это 2 знака, поэтому влезет только в (7,5)
хотите уместиться в 6, заказывайте меньше справа, не 5, а 4 или 3: (6,4) / (6,3)
...
Рейтинг: 0 / 0
Вопрос о преобразовании NUMERIC
    #40035755
Alex_Fox_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо! Теперь понял! :)
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Вопрос о преобразовании NUMERIC
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]