Хранение цен в SQLite, какой тип данных использовать?


15

Я использую SQLite и мне нужно хранить цены. SQLite в REALтипе данных говорит , что использует floating-pointчто неприемлемо для хранения цен. Есть ли тип данных помимо ТЕКСТА, который я могу использовать для численного хранения цен, чтобы они правильно сортировались?

Ответы:


25

Используйте целое число и сохраните цены как самую низкую общую единицу. Таким образом, за доллары и центы вы должны хранить его в центах. Например: 1 доллар будет храниться как 100.

По моему опыту это стандартная практика.


3
Это дополнительная работа, но это путь - вам также нужно поле типа валюты для хранения значения, чтобы вы знали, как конвертировать обратно. Вы также должны обратить внимание - большинство валют используют 2 знака после запятой, но некоторые используют три. Проверьте ISO 4127 для полного списка.
lonstar

CLF Чилийский Unidad de Fomento использует 4 знака после запятой. Биткойн еще больше :-)
Джанлука Геттини

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.