我的postgres数据库中有status
列jsonb
我可以用这样的东西预填充json。
CREATE TABLE ...
status jsonb NOT NULL DEFAULT '{"hello": "world"}'
...
但我要问的是,我想要的是一个JSON属性,其时间戳使用函数now()
进行预先解析
CREATE TABLE ...
status jsonb NOT NULL DEFAULT '{"created_at": "'now()'"}'
...
CREATE TABLE ...
status jsonb NOT NULL DEFAULT '{"created_at": "'+now()'+"}'
...
不幸的是,上述方法不起作用。怎么办呢?
答案 0 :(得分:0)
您必须使用jsonb_build_object在运行时创建JSONB:
CREATE TABLE foobar
(status jsonb NOT NULL DEFAULT jsonb_build_object('created_at', now()));
SQL小提琴here。