mysql json类型最大长度限制_MySQL json 数据类型

2ff34e647e2e3cdfd8dca593e17d9b0a.png必须要5.7以上版本才能使用

写在开头

mysql json 的功能很强大,只是用来当一个储存数据的字段 就没什么意义了。

使用proto做交互的话,只要JSON 写得好 用proro.Unmarshal() 就可以很方便的转换类型 可以精简很多代码

JSON path 是以 $ 开头,之后就是JSON的层级使用。$

$[0].name

$[0][1]

//*表示所有

$[*]

数据比较

json中的数据可以用 =, , >=, <>, !=, and <=> 进行比较。

json里的数据类型是多样的,在不同类型之间进行比较时,高优先级的要大于低优先级的(可以用JSON_TYPE()函数查看类型)。

优先级从高到低如下:

BLOB > BIT > OPAQUE > DATETIME > TIME > DATE > BOOLEAN > ARRAY > OBJECT > STRING > INTEGER >DOUBLE > NULL

函数整理

创建函数JSON_ARRAY: JSON_ARRAY(val1,val2,val3…)

JSON_OBJECT: 生成一个包含指定K-V对的json object。如果有key为NULL或参数个数为奇数,则抛出异常。

JSON_QUOTE:JSON_QUOTE(json_val) 将json_val用””号括起来。

CONVERT: CONVERT(json_string,JSON)

查询函数JSON_CONTAINS:JSON_CONTAINS(json_doc,var,[path])

查询json文档是否在指定path包含指定的数据,包含则返回1,否则返回0. 如果有参数为null或者path不存在则返回null

JSON_CONTAINS_PATH:JSON_CONTAINS_PATH(json_doc,one_or_all,path,path…..)

查询是否存在指定路径,存在则返回1,否则返回0.如果有参数为NULL,则返回NULL。

one_or_all只能取值“one”或”all”,one表示只要有一个存在即可;all表示所有的都存在才行。

JSON_EXTRACT:JSON_EXTRACT(json_doc, path[, path] …)

5.7.9及以上版本可

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值