繁体   English   中英

如何使用postgres更新jsonb数据列中的属性

[英]how update attribute in jsonb data column with postgres

嗨,我在postgres的jsonb专栏中有此结构

{

    "cronograma_actividades": {
      "section_template_id": 5,
      "ciclos": [
        {
          "ciclo_verano": {
            "nro_semanas_max": 9,
            "programas": [
              {
                "pregrado": {
                  "modalidades": [
                    {
                      "type": "presencial",
                      "codigo_formula": "FOR2234",
                      "unidades": [
                        {
                          "nro": 1,
                          "titulo": "Unidad aprendi",
                          "logro": "Logro de una unidad es texto",
                          "semanas": [

                                  ]
                                },
                                {}
                              ]
                            },


  ]
}

因此,我如何使用postgres更新字段codigo_formula,此列是jsonb类型,我找到json_object_set_path,但是我不知道如何访问深树

问候

假设包含jsonb的列称为“ testcol”,则可以执行以下操作:

update t_test set testcol = jsonb_set(testcol, '{cronograma_actividades,ciclos,0,ciclo_verano,programas,0,pregrado,modalidades,0}', jsonb('{"cordigo_formula":"new value"}'), false);

0值表示数组中的位置。 实际上在postgresql中一篇关于json(b)的令人印象深刻的帖子,您可能想在这里阅读

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM