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) /* '->' ,为列路径运算符'->>' ,在此基础上去掉引号*/
相关文章:
SQL - 数据类型
字符串类型 char(10),存储固定长度字符串 varchar(255),存储可变长度字符串 mediumtext,中文本,对于存储JSON对象、SCV字符串很好使 longtext,长文本,可以很好地存储教本或许多年地日志文件 tinytext&#…...
进程相关知识
进程和程序的区别 程序 程序是静态的,是存储在硬盘、SSD等存储介质中的一个文件,通常由源代码(如 .c 文件)编译生成的二进制可执行文件(如 a.out)。程序包含了指令和数据,但在未被执行时&#…...
萝卜快跑和端到端的自动驾驶(1)
先看一篇论文 2311.18636 (arxiv.org) 这篇论文里有一个非常好的图 比较了一下模块化任务(级联任务)和端到端自动驾驶的区别 首先什么叫模块化任务(级联) 如上图所示,左边的方块中的子方块,是展示了自动驾驶获取数据的途径,这里包括&…...
通信原理学习笔记
一个手机通话需要经过下面三个网络 类别接入网(Access Network)承载网(Transport Network)核心网(Core Network)定义连接终端用户与电信网络的部分。在接入网和核心网之间传输数据的网络。处理、交换和管理…...
系统编程---day4
1. 链接文件 命令行: ln -s 文件名 softlink 1.1 symlink int symlink(const char *oldpath, const char *newpath); 功能:创建一个链接向oldpath文件的新符号链接文件 参数:oldpath:被链接向的文件的路径 newpath:新符号链接文件 返回值:成功返回0,失败返回…...
01:电容的什么,各类电容的优缺点
1.电容是什么? 电容是由两块不连通的导体,已经中间的不导电材料组成 电容结构: 1.2电容的容量计算公式 C ε s d \displaystyle\frac{εs}{d} dεs 1.3常见电容的种类 1.4各类电容的特点...
Android+Jacoco+code-diff全量、增量覆盖率生成实战
背景 主要是记录下Android项目使用jacoco生成代码覆盖率的实战流程,目前已完成全量覆盖方案,仅使用jacoco就能实现; 由于我们的Android端是使用Java和kotlin语言,目前增量的方案code-diff仅针对Java代码,卡在kotlin文件的分析&am…...
乌龟对对碰在线版
爆肝两天使用vue开发了一个在线版的乌龟对对碰小游戏之幸运对对碰。没有找到合适的乌龟素材,现在使用小兔子代替。 体验地址:幸运对对碰 | 乌龟对对碰小游戏 之前的python版本的乌龟对对碰:写文章-CSDN博客 乌龟对对碰-幸运对对碰...
如何更改select option边框颜色和选中的颜色
<!doctype html> <html> <head> <meta charset"utf-8"> <title>如何更改select option边框颜色和选中的颜色</title> </head><style>ul{border: 1px solid #000000;width: 500px;height: auto;background-color: aq…...
6. 数据结构—串的匹配算法
1.BF算法(暴力算法) //模式匹配(暴力算法) int Index(SString S,SString T){int i1,j1;while(i<S.length&&j<T.length){if(S[i]T[i]){i;j;}else{ii-j2; //最开始匹配的位置的后一个j1; //从头匹配 }}if(j>T.length)return i-T.length;return return 0…...
九大服务架构性能优化方式
来源:九大服务架构性能优化方式 目录 性能优化九大方式: 缓存 使用什么样的缓存 缓存常见问题 缓存淘汰 缓存数据一致性 并行化处理 批量化处理 数据压缩合并 无锁化 顺序写 分片化 避免请求 池化 异步处理 总结 最近做了一些服务性能优…...
【RabbitMQ】 相关概念 + 工作模式
本文将介绍一些MQ中常见的概念,同时也会简单实现一下RabbitMQ的工作流程。 MQ概念 Message Queue消息队列。是用来存储消息的队列,多用于分布式系统之间的通信。 系统间调用通常有:同步通信和异步通信。MQ就是在异步通信的时候使用的。 同…...
嵌入式学习 ——(Linux高级编程——进程)
目录 一、进程的含义 二、进程和程序的区别 三、进程的作用 四、进程的状态 五、进程的调度与上下文切换 六、查询进程相关命令 七、fork()函数 八、getpid()和getppid()函数 九、面试题解析: 十、应用场合及测试 一、进程的含义 进程指正在运行的程序&a…...
C++练习备忘录
1. 保留两位小数输出格式 #include <iostream> #include <iomanip> using namespace std; int main() {double S 0;S (15 25) * 20 / 2;cout << fixed << setprecision(2) << S;return 0; }2. 设置输出宽度 #include <iostream> #inclu…...
改善工作流
快捷键管理器 打开Editor->Shortcuts查看和编辑Unity中的快捷键 示例 ShiftSpace 窗口最大化 P 选择预制体 进入预制体编辑模式 单一检视窗口 选择组件,选择Properties打开一个窗口,显示组件信息;切换对象,窗口信息不会改变…...
迭代器失效
一、什么是迭代器失效 迭代器的主要作用就是让算法能够不用关心底层数据结构,其底层实际就是一个指针,或者是对指针进行了封装,比如:vector的迭代器就是原生态指针T* 。因此迭代器失效,实际就是迭代器底层对应指针所指…...
@RequestParam @RequestBody @PathVariable 这三个注解对应的前端使用vue的http请求时不同的调用方式
1. RequestParam 用途:用于提取请求参数,常见于GET请求或表单提交。 Vue HTTP 请求示例: // 使用axios发送GET请求 axios.get(/api/users, { params: { id: 1, name: John } }); 2. RequestBody 用途:用于提取请求体…...
SQL - 索引
索引本质上是数据库引擎用来快速查找数据的数据结构,可以显著提高查询的性能,为了加快运行较慢的查询。创建索引 默认索引 create index 索引名 on 表名 (列名); 通过对列名进行创建索引,在查询的时候,数据库就能通过索引找到匹配…...
Oracle23ai新特性FOR LOOP循环控制结构增强
在Oracle数据库中,FOR LOOP是一种常用的循环控制结构,它允许你重复执行一系列语句固定次数或直到满足特定条件为止。然而,标准的Oracle PL/SQL中的FOR LOOP主要用于遍历集合(如数组或游标的结果集),而不是像…...
DHU OJ 二维数组
思路及代码 #include<iostream> using namespace std; int main(){ //input 多组 //input M,N int 1< <20 //input M 行 N 列 数据 //initialize listint M, N;while (cin >> M >> N){int list[M][N];for (int i 0; i < M-1; i){for (int j 0; j…...
IBM Rhapsody 9.0.2 配置与编译问题解决指南
1. IBM Rhapsody 9.0.2环境配置常见问题解析 第一次接触IBM Rhapsody 9.0.2时,我遇到了不少配置上的坑。这个强大的系统建模工具虽然功能全面,但在环境搭建阶段确实需要特别注意几个关键点。最典型的问题就是Visual Studio版本兼容性,这也是大…...
动态链接库emp.dll详解:从原理到实战修复
动态链接库emp.dll深度解析:技术原理与高效修复指南 引言:动态链接库的现代价值 在Windows系统的软件生态中,动态链接库(DLL)如同建筑中的预制构件,通过代码复用机制显著提升了开发效率和系统资源利用率。emp.dll作为其中一员&…...
终极指南:3个维度解锁Cyber Engine Tweaks,重塑赛博朋克2077游戏体验
终极指南:3个维度解锁Cyber Engine Tweaks,重塑赛博朋克2077游戏体验 【免费下载链接】CyberEngineTweaks Cyberpunk 2077 tweaks, hacks and scripting framework 项目地址: https://gitcode.com/gh_mirrors/cy/CyberEngineTweaks Cyber Engine …...
嵌入式设备参数存储方案设计与优化
嵌入式设备参数存储方案设计与实现1. 项目概述在嵌入式系统开发中,参数存储是一个基础但至关重要的功能模块。合理的参数存储方案直接影响产品的可靠性、可维护性和升级扩展能力。本文将深入分析嵌入式设备中常见的参数存储方案,重点解决结构体存储方式存…...
状态量: 轮速、滑移率、附着系数
基于分布式驱动电动汽车的路面附着系数估计,分别采用无迹卡尔曼滤波(UKF)和容积卡尔曼滤波(CKF)对电动汽车四个车轮的路面附着系数进行估计。可高速,低速,高附着系数,低附着系数&…...
从权重计分到算杀引擎:五子棋AI核心算法实战解析
1. 五子棋AI的算法演进:从基础评分到算杀引擎 五子棋作为一款经典策略游戏,其AI算法的核心在于如何评估棋盘局势并做出最优决策。早期AI主要依赖简单的评分机制,比如给不同的棋形(活二、活三、冲四等)赋予固定分值&…...
从多项式逼近到优化求解:泰勒展开与拉格朗日乘子的机器学习实践
1. 泰勒展开:机器学习的"局部望远镜" 第一次接触泰勒公式时,我的数学老师用了个有趣的比喻:这就像用乐高积木拼凑复杂雕塑的局部轮廓。在机器学习中,这个思想被广泛应用——当我们面对复杂的损失函数曲面时,…...
永磁同步电机参数辨识:EKF算法的奇妙之旅
卡尔曼滤波EKF算法,针对于永磁同步电机的电阻、电感等参数的辨识,辨识速度快,效果好,适合入门童鞋参考学习:本商品 包含以下内容: (1)采用SVPWM矢量控制; (2&…...
原创:黄大年茶思屋难题揭榜第141期|5道核心题精简公开·未获技术反馈求指正
黄大年茶思屋难题揭榜第141期|5道核心题精简公开未获技术反馈求指正 作者:华夏之光永存 摘要 这五道题我们已完整解题并提交黄大年茶思屋难题揭榜,最终被退回,但平台未给出任何具体技术驳回意见、未指明缺陷、未提供修改方向。我们…...
DW_apb_uart初始化全流程解析:从时钟门控到中断配置的15个关键步骤
DW_apb_uart深度初始化指南:从寄存器配置到中断优化的15个实战要点 在嵌入式系统开发中,UART通信作为最基础却又最关键的接口之一,其稳定性和性能直接影响整个系统的可靠性。DW_apb_uart作为业界广泛使用的高性能UART IP核,其初始…...
