Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Типы для хранения больших чисел / 5 сообщений из 5, страница 1 из 1
24.03.2006, 14:02
    #33623510
mxlPostgres
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Типы для хранения больших чисел
Какой из типов будет работать быстрее double precision,double,real,bigint? Числа целые до 16-17 знаков.В запросах используются агрегатные функции sum.В БД несколько миллионов записей.
...
Рейтинг: 0 / 0
24.03.2006, 16:20
    #33624056
Funny_Falcon
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Типы для хранения больших чисел
Не один из машинных типов не даст тебе точность 22 (16 + 6 ) знаков. И даже 16 вряд ли (если double precision 80 бит - то 14 максимум, а на x86 именно такой (по-моему)).
Так что юзать тебе Numeric без варианта ( и смена DB вряд ли поможет)

Поправьте, если я не прав.
...
Рейтинг: 0 / 0
24.03.2006, 17:40
    #33624366
ilejn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Типы для хранения больших чисел
Funny_FalconНе один из машинных типов не даст тебе точность 22 (16 + 6 ) знаков. И даже 16 вряд ли (если double precision 80 бит - то 14 максимум, а на x86 именно такой (по-моему)).
Так что юзать тебе Numeric без варианта ( и смена DB вряд ли поможет)

Поправьте, если я не прав.

Я не очень понял про 22, которое 16+6. В остальном наиболее подходящим типом кажется int8.
...
Рейтинг: 0 / 0
24.03.2006, 17:56
    #33624411
4321
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Типы для хранения больших чисел
ilejn Я не очень понял про 22, которое 16+6. В остальном наиболее подходящим типом кажется int8.думаицца - 16 по условию, + sum по 10^6 дает 6 знаков (можно конечно только при sum кастить сразу в ньюмерик, но стоит ли?)
...
Рейтинг: 0 / 0
24.03.2006, 18:00
    #33624425
ilejn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Типы для хранения больших чисел
4321 ilejn Я не очень понял про 22, которое 16+6. В остальном наиболее подходящим типом кажется int8.думаицца - 16 по условию, + sum по 10^6 дает 6 знаков (можно конечно только при sum кастить сразу в ньюмерик, но стоит ли?)

Теперь понял. По поводу стоит/не стоит сказать сложно. С одной стороны, подход кажется крайне сомнительным, а с другой разница в скорости будет очень заметна.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Типы для хранения больших чисел / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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