V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
shanghai1943
V2EX  ›  问与答

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

  •  
  •   shanghai1943 · 137 天前 · 1504 次点击
    这是一个创建于 137 天前的主题,其中的信息可能已经有所发展或是发生改变。
    MySQL5.7 开始支持 JSON 数据类型了,8 里面也支持了 JSON 字段的索引,不知道各位老哥在生产环境中有用过么?效果如何?

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