我可以将默认约束添加到 POSTGRES 视图中的列吗?
Can I add a default constraint to a column in a view in POSTGRES?
我有一个简单的看法。它由 table 中的几列和一些基于 table 中的值的新列组成。它看起来像这样:
| flightid | capacity | bookedseats | availablseats |
可用座位很简单(容量 - 预定座位)。但是,有时 bookedseats 为 NULL,即没有预订座位。然后也使 availableseats NULL。理想情况下,我希望 availableseats 为 0。这可能吗?
我想我可以添加一个默认约束,在没有任何预订时将其设置为 0,但我不知道如何将 DEFAULT 约束应用于视图中的列。
有什么想法吗?
谢谢
您只能在使用 VALUES
插入时使用 DEFAULT
,要合并 NULL,请在查询中使用 COALESCE,例如:
select coalesce(availablseats,0) availablseats
如果 availablseats 为空,它将给出 0
我有一个简单的看法。它由 table 中的几列和一些基于 table 中的值的新列组成。它看起来像这样:
| flightid | capacity | bookedseats | availablseats |
可用座位很简单(容量 - 预定座位)。但是,有时 bookedseats 为 NULL,即没有预订座位。然后也使 availableseats NULL。理想情况下,我希望 availableseats 为 0。这可能吗?
我想我可以添加一个默认约束,在没有任何预订时将其设置为 0,但我不知道如何将 DEFAULT 约束应用于视图中的列。
有什么想法吗?
谢谢
您只能在使用 VALUES
插入时使用 DEFAULT
,要合并 NULL,请在查询中使用 COALESCE,例如:
select coalesce(availablseats,0) availablseats
如果 availablseats 为空,它将给出 0