Приложение, над которым я работаю, должно хранить вес формата X pounds, y.y ounces
. База данных - это MySQL, но я предполагаю, что это не зависит от базы данных.
Я могу придумать три способа сделать это:
- Преобразуйте вес в десятичные килограммы и сохраните в одном поле. (5 фунтов 6.2 oz = 5.33671875 lbs)
- Преобразование веса в десятичные унции и сохранение в одном поле. (5 фунтов 6.2 oz = 86.2 oz)
- Храните фунты как целое число и часть унций как десятичное число в двух полях.
Я думаю, что №1 не такая хорошая идея, так как десятичные килограммы будут производить числа произвольной точности, которые нужно будет хранить как float, что может привести к неточностям, присущим номерам с плавающей запятой.
Есть ли веская причина выбрать # 2 над # 3 или наоборот?