Golang SQL 封装jsonb算子

Golang SQL package jsonb operator

在 sql package for postgresql jsonb 我如何使用 @> 运算符进行字符串查询,例如

备选方案是 data->>'string_data' = ,我不喜欢它用于多个语句

错误是:

    "Message": "invalid input syntax for type json",
    "Detail": "Token \"$\" is invalid.”,
    "Where": "JSON data, line 1: $...",
    "Routine": "report_invalid_token"

AFAIK,你不能在字符串内部插入,但你可以 build a JSON object 使用 json_build_objectjson_object:

SELECT data FROM test
WHERE data @> json_build_object('stringdata', ::text, 'foo', ::int)::jsonb;

这基本上等同于

SELECT data FROM test
WHERE data @> '{"stringdata":"","foo":}';