shanghai1943
V2EX  ›  问与答

想问下大家在生产中有用 MySQL8 里的 JSON 特性了么

  •  
  •   shanghai1943 · Dec 30, 2021 · 3294 views
    This topic created in 1594 days ago, the information mentioned may be changed or developed.
    MySQL5.7 开始支持 JSON 数据类型了,8 里面也支持了 JSON 字段的索引,不知道各位老哥在生产环境中有用过么?效果如何?

    谢谢。
    15 replies    2021-12-31 14:29:29 +08:00
    sadfQED2
        1
    sadfQED2  
       Dec 30, 2021 via Android
    生产环境 mysql5.6
    mikulch
        2
    mikulch  
       Dec 30, 2021
    这个特性具体什么用处?
    shanghai1943
        3
    shanghai1943  
    OP
       Dec 30, 2021
    @mikulch 从网上的帖子来看,可以把一些不太重要的信息或者需要经常扩展的信息放在 JSON 字段里,省去声明字段的麻烦,可以利用自带的 JSON 函数对里面的字段进行查询过滤。
    shanghai1943
        4
    shanghai1943  
    OP
       Dec 30, 2021
    @sadfQED2 连 5.7 都还没么。。
    vate32
        5
    vate32  
       Dec 30, 2021
    用了,主要存储一些不怎么重要也许会变的字段,比如过滤信息啥的。mybatis-plus 可以直接映射,序列化和反序列化基本不需要操心
    @TableField(value = "filter_info", typeHandler = JacksonTypeHandler.class)
    private FilterInfo filterInfo;
    // filter_info 在表里就是 json 类型
    shanghai1943
        6
    shanghai1943  
    OP
       Dec 30, 2021
    @vate32 会对 JSON 里的字段进行过滤之类的操作么
    jonathanchoo
        7
    jonathanchoo  
       Dec 30, 2021
    用了 select column->'$.xxx'还不错
    AngryPanda
        8
    AngryPanda  
       Dec 30, 2021 via iPhone
    用过,但是还是觉得能拆字段尽量拆字段吧
    FrankAdler
        9
    FrankAdler  
       Dec 30, 2021
    php 的 xhprof 做了 pdo 支持,用到了 json 查询,性能一般,但是好过 like
    vate32
        10
    vate32  
       Dec 30, 2021
    @shanghai1943 我的意思是,会用 json 存储一些不怎么重要,会频繁变动,但又不想一直修改数据库字段的信息,比如某些查询任务的过滤条件。
    Chinsung
        11
    Chinsung  
       Dec 30, 2021
    没用过,但是 psql 之前用过 json 字段。
    这种东西,你在代码里不太可能根据 json 的字段去查,所以本质上使用起来和你自己定义一个 varchar 字段里面存 json 是一样的。
    Saurichthys
        12
    Saurichthys  
       Dec 30, 2021
    json 特性不是 5..7 就有了么
    onhao
        13
    onhao  
       Dec 31, 2021
    有的 :例如 https://wuhao.pw/archives/244/
    会简化很多操作, 很多功能 不需要写程序,直接 sql 搞定,随着 mysql 8 的普及,以及 json 的流行 使用的场景也会更常见和频繁。
    yeyu
        14
    yeyu  
       Dec 31, 2021
    没用,生产 json 类型都丢 NoSql 数据库
    zed1018
        15
    zed1018  
       Dec 31, 2021
    我用了,就那样吧,操作挺麻烦的。几个 json function 都不是很好用。跟 postgres 比差太多
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5501 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 54ms · UTC 09:29 · PVG 17:29 · LAX 02:29 · JFK 05:29
    ♥ Do have faith in what you're doing.