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

15

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

unixman83
источник

Ответы:

25

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

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

Philᵀᴹ
источник
3
Это дополнительная работа, но это путь - вам также нужно поле типа валюты для хранения значения, чтобы вы знали, как конвертировать обратно. Вы также должны обратить внимание - большинство валют используют 2 знака после запятой, но некоторые используют три. Проверьте ISO 4127 для полного списка.
lonstar
CLF Чилийский Unidad de Fomento использует 4 знака после запятой. Биткойн еще больше :-)
Джанлука Геттини
4

Конечно, используйте целое число

Вам нужно будет решить, сколько десятичных знаков вы занимаете, и быть последовательными на уровне приложения.

Джек говорит, попробуйте topanswers.xyz
источник