我可以表演
SELECT to_json(1)
SELECT to_json(1.4)
SELECT to_json('this is a nice json text')
SELECT to_json('{"become":"json"}')
SELECT to_json('null')
Run Code Online (Sandbox Code Playgroud)
并且一切正常,但是当您执行以下操作时:
SELECT to_json(NULL::TEXT)
Run Code Online (Sandbox Code Playgroud)
你实际上得到的Postgres内置NULL,就像如果没有真的发生了,当我期待的结果相同to_json('null')的exapleSELECT to_json(someText)::TEXT FROM ...也许,你所期望的"input","stuff",""和null,而是你会得到"input","stuff",""和
我的问题是,为什么SELECT to_json(NULL::TEXT)不给你一个 json null,而是一个 NULL 指针?为什么它在 postgres 中是这样实现的?一些具体的原因?