V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
szxczyc
V2EX  ›  问与答

Go 怎么样存取 json 中的某些长度不定的字段到 MySQL 更方便读写呢?

  •  
  •   szxczyc · Nov 25, 2021 · 1083 views
    This topic created in 1614 days ago, the information mentioned may be changed or developed.

    tags 里面都是一些标签,个数不定,可能有 10 个或者更多~也有可能 5 ,6 个这样子~

    我其实比较希望能把 tags 的 tag_category 属性存到 MySQL 里的 tag_category 列里面(同时 value 也存到 value 列里面),但是后面拿出来还要变成 json 又很麻烦~不知道怎么做一一对应~

    go 里面有什么优雅的办法吗?

    {
        "version": "0.0.1",
        "success": true,
        "result": [
            {
                "service_tag": "xxxxx",
                "ip_lan": "10.10.10.10",
                "ip_wan": "0.0.0.0",
                "idc": "JP",
                "tags": [
                    {
                        "tag_category": "environment",
                        "value": "live"
                    },
                    {
                        "tag_category": "idc",
                        "value": "jp"
                    },
                    {
                        "tag_category": "application",
                        "value": "tcl"
                    },
                    {
                        "tag_category": "function",
                        "value": "redis"
                    },
                    {
                        "tag_category": "server_standard",
                        "value": "amd"
                    },
                    {
                        "tag_category": "office",
                        "value": "JP"
                    }
                ],
                "memory": "1024GB",
                "cpu_count": 4800,
                "state": "operating"
            }
        ]
    }
    
    5 replies    2021-11-25 15:50:20 +08:00
    DShen
        1
    DShen  
       Nov 25, 2021 via iPhone
    你还不如直接存 json 到 mysql
    justseemore
        2
    justseemore  
       Nov 25, 2021
    结构体去拼呗..
    lbp0200
        3
    lbp0200  
       Nov 25, 2021
    YYDS 的 MySQL ,应该遵循三范式,再建一张表,做表关联
    查询起来非常地酸爽,一个 SQL 包含几十个 join ,
    justseemore
        4
    justseemore  
       Nov 25, 2021
    herich
        5
    herich  
       Nov 25, 2021
    tags 另存一张表,tag 增加一个 server_id 字段, 查询的时候先查 server, 再根据 server_id 查出 tags
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2987 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 15:24 · PVG 23:24 · LAX 08:24 · JFK 11:24
    ♥ Do have faith in what you're doing.