首页 > 数据库 >mysql-json类型字段多值并查

mysql-json类型字段多值并查

时间:2023-04-21 19:11:38浏览次数:48  
标签:并查 column 支持 json mysql gorm name

mysql8.0.17版本支持json索引. 官方文档: https://dev.mysql.com/doc/refman/8.0/en/json.html

  1. 规则

  1. 版本是否支持

5.7.8版本: 支持json类型字段 8.0.17版本: 支持json类型字段多列索引
  1. 环境是否支持

当前环境中使用的是gorm负责mysql的交互。 支持原生sql操作,所以gorm不会妨碍到使用json类型的字段,相关json字段的特性。 正在调研gorm是否支持这个特性(TODO)。  
  1. 接入json数据类型

  1. 创建字段

    CREATE TABLE table_name (
      ...
      json_column_name JSON ,
      ...
    );
    
  1. 创建索引 - 多值

      functional index
    ALTER TABLE table_name ADD INDEX idx_json_column_name_list( ( CAST( json_column_name -> '$[*].id' AS bigint array)) );
  1. gorm代码接入

 
  1. 读写测试

标签:并查,column,支持,json,mysql,gorm,name
From: https://www.cnblogs.com/supermarx/p/17341462.html

相关文章

  • mysql8主从节点搭建
    设置主从前先创建作为同步数据的用户,可直接在Navicat中创建并对需同步的库授权。注意创建用户的密码插件plugin要保持一致,MySQL8.0设为mysql_native_password,此项可在Navicat直接设置。以192.168.1.1从和192.168.1.2主1、在主节点修改配置文件/etc/my.cnf添加 server......
  • 关于 mysql 加了 limit 反而变慢的问题?
    SELECT*FROMpre_forum_postWHEREtid=6584344AND`inv`='0'AND`uid`='6547981'ORDERBYdatelineDESClimit4;上面一条正常执行需要16-20秒.SELECT*FROMpre_forum_postWHEREtid=6584344AND`inv`='0'AND`uid`='6547981'O......
  • MYSQL事件
    --创建MYSQL事件DELIMITER$CREATEEVENTIFNOTEXISTSevent_deldataONSCHEDULEEVERY1MINUTESTARTS'2023-04-2100:00:00'ONCOMPLETIONPRESERVECOMMENT'测试'DOBEGIN--Droptabledroptableifexiststmp_czc;--......
  • MySQL:分页
    SELECT*FROMst_typeLIMIT5前几条数据 SELECT*FROMst_typeLIMIT1,2第几条数据后的多少条数据  第几页 一页多少条 查询第1条到第10条的数据的sql是:select*fromtablelimit0,10;  ->对应我们的需求就是查询第一页的数据:select*fromtablelimit(1-1)*1......
  • 开心档之MySQL ALTER命令
    MySQLALTER命令当我们需要修改数据表名或者修改数据表字段时,就需要使用到MySQLALTER命令。开始本章教程前让我们先创建一张表,表名为:testalter_tbl。root@host#mysql-uroot-ppassword;Enterpassword:*******mysql>useRUNOOB;Databasechangedmysql>createtable......
  • 开心档之MySQL 管理
    MySQL管理启动及关闭MySQL服务器Windows系统下在Windows系统下,打开命令窗口(cmd),进入MySQL安装目录的bin目录。启动:cdc:/mysql/binmysqld--console关闭:cdc:/mysql/binmysqladmin-urootshutdownLinux系统下首先,我们需要通过以下命令来检查MySQL服务......
  • mySql获取表结构语句
    获取完整表结构:其中,where语句table_name字段的值替换为你的表名,table_schema字段的值替换为你的数据库名。select*frominformation_schema.`COLUMNS`wheretable_name='records'andtable_schema='zc_archives' 获取表结构关键信息:selectordinal_position序号,colum......
  • MySQL Shell 使用报错 SyntaxError: Unexpected identifier
    文章目录一、问题报错二、解决办法一、问题报错MySQLShell8.0.23Copyright(c)2016,2021,Oracleand/oritsaffiliates.OracleisaregisteredtrademarkofOracleCorporationand/oritsaffiliates.Othernamesmaybetrademarksoftheirrespectiveowners.T......
  • C# JSON简单测试
    1usingNewtonsoft.Json;2usingSystem;3usingSystem.Collections.Generic;4usingSystem.IO;5usingSystem.Text.Json.Serialization;67namespaceTestJSON8{9internalclassProgram10{11staticvoidMain(string[]args)1......
  • mysql generate 1000000 rows with random data
    CREATETABLE`data`(`id`bigint(20)NOTNULLAUTO_INCREMENT,`datetime`timestampNULLDEFAULTCURRENT_TIMESTAMP,`channel`int(11)DEFAULTNULL,`value`floatDEFAULTNULL,......