postgres какой тип данных использовать для хранения не дней (может включать полдня) - PullRequest
0 голосов
/ 09 января 2020

Какой тип данных следует использовать для хранения ни одного дня в месяце (не более 31 и может включать полдня, например, 5, 5,5, 10, 25,5). Это всегда будет целое число или число с плавающей точкой. Если это число с плавающей точкой, то оно всегда будет .5.

Ответы [ 2 ]

3 голосов
/ 09 января 2020

Здесь вы можете просто ввести INTEGER, за исключением того, что в столбце будет храниться число половина дней. Чтобы узнать, сколько всего было полных дней, вам нужно разделить на два (что, согласно вашим правилам, даст либо целое число, либо целое число с дробной составляющей 0,5).

0 голосов
/ 09 января 2020

Для этого вы можете использовать домен .

CREATE DOMAIN halfdays
              AS numeric(3, 1)
                 CHECK (value >= 1
                        AND value <= 31
                        AND (value * 10) % 5 = 0);
...