2016-12-03 4 views
0

Есть ли какое-либо расширение скрытого стандартного способа преобразования вышеуказанного?postgres metric имперское преобразование

eg select some_float at measurement system 'imperial' как у нас time zone, или convert_ms(some_value,'litre', 'pint') или любой другой? Конечно, для вывода значения потребуются дополнительные типы данных, такие как «вес», «объем», «расстояние» и правила.

Я не ожидаю, что locale поможет здесь, потому что ему нужны вычисления, а не только символ перед валютой, порядок в дате или символы, чтобы отделить тысячи или около того. Но мы можем SET timezone, и он вычисляет разницу (даже учитывая переход на летнее время), поэтому есть шанс.

ответ

1

Вы имеете в виду расширение для аннотирования данных с помощью единиц измерения. https://github.com/ChristophBerg/postgresql-unit - один такой пакет, но он придерживается системы СИ. Страшная часть заключается в том, как она создает один тип данных SQL для любого количества различных типов измерений; postgis делает аналогичную вещь с геометрией, но ее можно ограничить. dimensional and unit analysis in SQL database имеет некоторую другую дискуссию по этой теме. GNU units делает довольно хорошую работу, пытаясь перевести для многих единиц, и еще лучше показать, насколько безнадежно сложно это (например, около 20 разных унций). Таким образом, при пересчете метров в «имперский», это означает, что ноги, фарлонг или винт? И, конечно, когда мы запрашиваем данные из SQL, это типично для дальнейшей обработки, поэтому мы хотим, чтобы последовательно анализируемый тип данных. Очень немногие системы используют SQL для прямого форматирования презентации.

+0

очень интересные ссылки, спасибо! –

Смежные вопросы