[mysql] JSON数据操作

/ 20,631评论 / 89343阅读 / 0点赞

前言

在MySql中使用

声明json类型的字段

create table test(
    uids json not null default ('[]')
);
default ('[{"name":"coolight"}, {"name","洛天依"}]')
或
default ("[{'name':'coolight'}, {'name','洛天依'}]")

Mysql中常用的操作json函数

JSON_LENGTH(json1)=JSON_LENGTH(json2) and JSON_CONTAINS(json1, json2)
// 例如:
update test set enable=true where JSON_LENGTH(json1)=JSON_LENGTH(json2) and JSON_CONTAINS(json1, json2);
// 示例:在数组末尾追加元素
SELECT JSON_ARRAY_APPEND('[1, 2, 3]', '$', 4); 
// 得到 [1,2,3,4]

// 示例:对数组添加一个元素,如果已经存在则不添加
// ["1000000", "1000001", "1000002"]
update test set uids=json_array_append(uids, '$','1000001') where id=777 and JSON_CONTAINS(uids,JSON_ARRAY('1000001'))=0;
// 没有添加,注意where ... and 后面 使用JSON_CONTAINS判断了是否包含准备添加的元素
// ["1000000", "1000001", "1000002"]
update test set uids=json_remove(uids, JSON_UNQUOTE(JSON_SEARCH(uids, 'one','1000001'))) where id=777;
// ["1000000", "1000002"]
create TRIGGER auto_reset after insert on test for each row
BEGIN
    update test set uids=json_array_append(uids, '$', CAST(NEW.uid as char)) where id=NEW.id;
END;
  1. 为什么猫会拔掉它们的皮毛吃掉它?

  2. 猫可以吃冰棒吗?

  3. 暹罗小猫要多少钱?

  4. 猫可以吃活的金鱼吗?

  5. 兽医批准的自制狗粮食谱

  6. 为什么我的猫的呼吸有异味?

  7. 狗可以吃草莓吗?

  8. 猫可以吃鲑鱼吗?

  9. where are bluetti solar generators made

  10. 猫能感觉到抑郁和焦虑吗?

  11. 为什么猫这么喜欢绳子?

  12. 缅因猫夏天需要剃毛吗?

  13. 猫可以吃芝士泡芙吗?

  14. 猫妈妈什么时候离开他们的小猫?

  15. 如何自信地为您的新狗命名

  16. 为什么猫在睡梦中会抽搐?

  17. 猫可以吃芝士蛋糕吗?

  18. 为什么猫有黑牙龈?

  19. 俄罗斯蓝猫和狗相处得好吗?

  20. 猫可以吃生鸡蛋吗?

  21. 当我的狗打哈欠时,这意味着什么?

  22. 萨凡纳猫要多少钱?

  23. 为什么猫躺在塑料袋上?

  24. 为什么公猫有乳头?

  25. 猫什么年龄开始喷?

  26. 为什么我的猫在慢动作?

  27. 为什么我的猫的皮毛如此柔软?

  28. 为什么猫会在衣服上撒尿?

  29. 如何在没有镊子的情况下去除猫身上的蜱虫?

  30. 了解兽医护理的费用

  31. 为什么我的狗睡这么多?

  32. 孟加拉猫能活多久?

  33. 俄罗斯蓝猫会发胖吗?

  34. 猫可以吃蝎子吗?

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注