当前位置: 首页 > news >正文

SQL - 数据类型

  • 字符串类型
    • char(10),存储固定长度字符串
    • varchar(255),存储可变长度字符串
    • mediumtext,中文本,对于存储JSON对象、SCV字符串很好使
    • longtext,长文本,可以很好地存储教本或许多年地日志文件
    • tinytext,微文本
  • 整数类型
    • tinyint,微整型,1字节
    • unsigned tinyint,无符号微整型,1字节
    • smallint,小整型,2字节
    • mediumint,中整型,3字节
    • int,整数,4字节
    • bigint,大整数,8个字节
  • 定点和浮点类型
    • decimal(p,s),小数型,存储定点数,(精度,小数位数);同义 dec,numeric,fixed
    • float,浮点类型,4个字节,用于科学计算
    • double,双精度,8个字节,用于科学计算
  • 布尔型
    • boolean (bool),(true or false)
  • 枚举和集合类型 (不好用)
    • enum('small','medium','large') //将某一列值限制在一个有限字符串列表范围内
    • set(……)
  • 日期和时间类型
    • date,存储没有时间的日期
    • time,存储一个时间值
    • datetime,日期时间型,8字节
    • timestamp,时间戳,4个字节
    • year,存储4位数年份
  • blob类型
    • 二进制长对象类型,用来存储大型二进制数据,如图像,视频,word文件等
    • tinyblob,255B
    • blob,65KB
    • mediumblob,16MB
    • longblob,4GB
  • json类型
    • 存储JSON文档
    • 创建 json对象:自定义大括号那种,json_object()
    • 更新,添加 json对象信息:json_set()
    • 删除 json对象中的部分信息:json_remove()
    • 查找json对象中的信息:json_extract(properties,'$.weight'),properties -> '$.json.name'
    • -- 更新,整个json对象信息
      -- 1
      update products
      set properties='
      {"dimension":[1,2,3],"weight":10,"json":{"name":"sony"}
      }'
      where product_id=1;-- 2
      update products
      set properties=json_object(
      'weight',19,
      'dimensions',json_array(1,2,3),
      'json',json_object('name','son')
      )
      where product_id=2; -- 更新或添加  json对象中的部分信息
      update products
      set properties = json_set(properties,'$.weight',20,'$.age',11
      )
      where product_id = 1;
      /* json_set() 第一个参数是要更新的json对象,其他的就是正常的添加,修改了 */-- 删除 json对象中的部分信息
      update products
      set properties = json_remove(properties,'$.age'
      )
      where product_id = 1;-- 查询 列中json对象,json对象中的元素信息
      -- 1
      select product_id,json_extract(properties,'$.weight')
      from products
      where product_id in (1,2);
      /* json_extract(properties,'$.weight')
      第一个参数为json对象,也就是属性列
      第二个参数是一条路径,一个字符串,即$.something
      用'$' 表示当前的json文档,用'.'来访问单独的属性或键*/-- 2
      select product_id,
      properties -> '$.dimensions[1]',
      properties -> '$.weight',
      properties -> '$.json.name' ,
      properties ->> '$.json.name' 
      from products
      where product_id in (1,2)
      /*  '->' ,为列路径运算符'->>' ,在此基础上去掉引号*/
      

http://www.lryc.cn/news/427716.html

相关文章:

  • 进程相关知识
  • 萝卜快跑和端到端的自动驾驶(1)
  • 通信原理学习笔记
  • 系统编程---day4
  • 01:电容的什么,各类电容的优缺点
  • Android+Jacoco+code-diff全量、增量覆盖率生成实战
  • 乌龟对对碰在线版
  • 如何更改select option边框颜色和选中的颜色
  • 6. 数据结构—串的匹配算法
  • 九大服务架构性能优化方式
  • 【RabbitMQ】 相关概念 + 工作模式
  • 嵌入式学习 ——(Linux高级编程——进程)
  • C++练习备忘录
  • 改善工作流
  • 迭代器失效
  • @RequestParam @RequestBody @PathVariable 这三个注解对应的前端使用vue的http请求时不同的调用方式
  • SQL - 索引
  • Oracle23ai新特性FOR LOOP循环控制结构增强
  • DHU OJ 二维数组
  • UDP/TCP --- Socket编程
  • 【C语言】最详细的单链表(两遍包会!)
  • QT:VS2019 CMake编译CEF
  • day31(8/19)——静态文件共享、playbook
  • 白骑士的C#教学实战项目篇 4.4 游戏开发
  • 在Vue工程中开发页面时,发现页面垂直方向出现两个滚动条的处理
  • 【C++初阶】:C++入门篇(一)
  • 【JAVA CORE_API】Day14 Collection、Iterator、增强for、泛型、List、Set
  • Go更换国内源配置环境变量
  • 澎湃认证显实力,浪潮信息存储兼容新篇章
  • Leetcode 3255. Find the Power of K-Size Subarrays II