【MySQL】:数据类型

数据类型

  • 一.数值类型
    • 1.整数
      • 1.tinyint
      • 2.bit类型
    • 2.浮点类型
      • 1.float
      • 2.decimal
  • 二.字符串类型
    • 1.char类型
    • 2.varchar类型
    • 3.char和varchar的区别
    • 4.日期和时间类型
    • 5.enum和set
  • 三.集合查询

在这里插入图片描述

一.数值类型

1.整数

在这里插入图片描述

1.tinyint

在这里插入图片描述

正常插入

在这里插入图片描述

越界插入

在这里插入图片描述

如果我们向mysql特定的类型中插入不合法的数据,MySQL一般都是直接拦截我们,不让我们做对应的操作!

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2.bit类型

bit[(M)] : 位字段类型。M表示每个值的位数,范围从1到64。如果M被忽略,默认为1。

在这里插入图片描述

这是因为bit字段在显示时,是按照ASCII码对应的值显示。

在这里插入图片描述

如果我们有这样的值,只存放0或1,这时可以定义bit(1)。这样可以节省空间。

2.浮点类型

1.float

float[(m, d)] [unsigned] : M指定显示长度,d指定小数位数,占用空间4个字节。

例子

小数:float(4,2)表示的范围是-99.99 ~ 99.99,MySQL在保存值时会进行四舍五入。

在这里插入图片描述

注意:float取无符号就是去掉负数。

2.decimal

decimal(m, d) [unsigned] : 定点数m指定长度,d表示小数点的位数。

decimal(5,2) 表示的范围是 -999.99 ~ 999.99。
decimal(5,2) unsigned 表示的范围 0 ~ 999.99。
decimal和float很像,但是有区别:float和decimal表示的精度不一样。

在这里插入图片描述

可以看到decimal其实更加准确,float表示的精度大约是7位。

decimal整数最大位数m为65。支持小数最大位数d是30。如果d被省略,默认为0.如果m被省略,默认是10。

二.字符串类型

1.char类型

char(L): 固定长度字符串,L是可以存储的长度,单位为字符,最大长度值可以为255。

在这里插入图片描述

在这里插入图片描述

在UTF8里虽然一个汉字是3个字节,但在mysql里仍被解释为一个字符。

2.varchar类型

varchar(L): 可变长度字符串,L表示字符长度,最大长度65535个字节。

在这里插入图片描述

说明:

关于varchar(len),len到底是多大,这个len值,和表的编码密切相关(注意len代表的是上限,并非一定开len个空间):
1.varchar长度可以指定为0到65535之间的值,但是有1 - 3 个字节用于记录数据大小,所以说有效字节数是65532。
2.当我们的表的编码是utf8时,varchar(n)的参数n最大值是65532/3=21844[因为utf中,一个字符占用3个字节,如果编码是gbk,varchar(n)的参数n最大是65532/2=32766(因为gbk中,一个字符占用2字节)。

3.char和varchar的区别

在这里插入图片描述

4.日期和时间类型

在这里插入图片描述

在这里插入图片描述

可以发现t3我们根本没有进行插入,但它自动生成了,也就是说时间戳是自动生成的。

5.enum和set

在这里插入图片描述

简而言之enum相当于单选,set相当于多选。

一般使用

在这里插入图片描述

枚举类型不仅可以写枚举常量,也可以写它的下标。

在这里插入图片描述

同样set也能用数字表示,但是它是按照比特位表示的。例如0001->登山,0010->游泳,0011->登山,游泳。

在这里插入图片描述

三.集合查询

按性别筛选

在这里插入图片描述

如果我们要筛选爱好里有武术的怎么做呢?这就需要find_ in_ set函数了。它会查找含有该子集的集合。

find_in_set(sub,str_list) :如果 sub 在 str_list 中,则返回下标;如果不在,返回0;str_list 用逗号分隔的字符串。

在这里插入图片描述

如果要求爱好里有登山和游泳呢?

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/223087.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springboot-redis设置定时触发任务详解

最近研究了一下“redis定时触发”,网上查了查资料,这里记录一下。 从Redis 2.8.0开始,Redis加入了发布/订阅模式以及键空间消息提醒(keyspace notification)功能。键空间消息提醒提供了允许客户端通过订阅指定信道获取…

Unity Mono加密解决方案

Unity Mono 是 Unity 引擎默认的脚本运行时环境,在游戏开发中扮演着重要的角色。Mono 由跨平台的开源 .NET 框架实现,它允许开发者使用 C# 等编程语言编写游戏逻辑。凭借简单易用的开发环境和高效的脚本编译速度,得到了众多游戏的青睐。 在 …

【Maven教程】(十二):版本管理 ——版本号定义约定及相关概念,自动化版本发布与创建分支,GPG签名 ~

Maven 版本管理 1️⃣ 版本管理的概念2️⃣ Maven 的版本号定义约定3️⃣ 主干、标签与分支4️⃣ 自动化版本发布5️⃣ 自动化创建分支6️⃣ GPG签名6.1 GPG 及其基本使用6.2 Maven GPG Plugin 🌾 总结 一个健康的项目通常有一个长期、合理的版本演变过程。例如JUn…

win10 + vs2017 + cmake3.17编译OSG-3.4.1

1. 下载文件 主要用到4个文件 1)OSG-3.4.1源码2)OSG第三方依赖库3)OSG示例数据4)cmake-3.17 我已经准备好了,大家可以自行下载。下载路径: 链接:https://pan.baidu.com/s/1E3YESh0T9KPlJJe2…

利用Python+selenium技术,实现浏览器基本操作详解,代码有详细注释

首先,需要安装selenium库和对应的浏览器驱动程序。以Chrome浏览器为例,可以使用以下命令安装selenium和chromedriver: pip install selenium然后,需要下载对应版本的chromedriver,并将其添加到环境变量中。下载地址&a…

代码随想录二刷 |二叉树 |144.二叉树的前序遍历

代码随想录二刷 |二叉树 |144.二叉树的前序遍历 题目描述解题思路代码实现递归法迭代法 题目描述 144.二叉树的前序遍历 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 示例 1: 输入:root [1,null,2,3] 输…

godot 报错Unable to initialize Vulkan video driver解决

版本 godot 4.2.1 现象 godot4.2.1 默认使用vulkan驱动,如果再不支持vulkan驱动的主机上,进入引擎编辑器将报错如下 解决 启动参数添加 –rendering-driver opengl3 即可进入引擎编辑器 此时运行项目仍然会报错无法初始化驱动 在项目设置中配置编…

面试__Java常见异常有哪些?

java.lang.IllegalAccessError:违法访问错误。当一个应用试图访问、修改某个类的域(Field)或 者调用其方法,但是又违反域或方法的可见性声明,则抛出该异常。 java.lang.InstantiationError:实例化错误。当…

vue实现公式编辑器组件

实现方式一 1、效果图 2、实现代码 组件弹框实现 样式自己调整 公式的数字与汉字元素、符号 建立元素表 动态获取 完整代码&#xff08;calculate.vue&#xff09; <template><div id"formulaPage"><divref"formulaView"class"f…

记录今日将C语言的Windows程序更改为python语言Windows程序,实现子窗口控制,类似微信程序框架最简单的原型

基本思路 为什么要选择python制作Windows应用程序&#xff0c;主要就是源代码直接展示&#xff0c;发现问题随时修改&#xff0c;同时可以不断增加新的功能方便。 由于C语言的Windows程序中结构类型在python中不能使用&#xff0c; 因此我们按照ctypes模块指导意见继承structu…

Verilog自学还是报班?

FPGA作为国内领先的芯片产品&#xff0c;和传统芯片相比并不局限于单纯的研究和设计芯片&#xff0c;而是针对多种领域的产品通过特定的芯片模型进行优化设计。FPGA本身也构成了典型的半定制电路&#xff0c;涵盖了数字管理模块、输入、输出等单元。 FPGA最大的特点是可以在同…

Unity_C#中使用protobuf

Unity_C#中使用protobuf 下载官方protobuf地址&#xff1a; https://github.com/protocolbuffers/protobuf/releaseshttps://links.jianshu.com/go?tohttps%3A%2F%2Fgithub.com%2Fprotocolbuffers%2Fprotobuf%2Freleases protobuf-c#源码生成dll&#xff0c;导入unity 1.…

双向无线功率传输系统MATLAB仿真

微❤关注“电气仔推送”获得资料&#xff08;专享优惠&#xff09; 模型简介&#xff1a; 初级侧转换器通过双向 AC/DC 转换器从电网获取电力&#xff0c;并由直流线电压 Vin 供电&#xff0c;而拾波侧被视为连接到 EV&#xff0c;并由连接到任一存储的单独直流源 Vout 表示或…

N26:构建无缝体验的平台工程之路-Part 2

​ 在第一​​​​​​部分&#xff0c;我们介绍了 N26 团队为达成 “在 Day 1 实现轻松部署” 的目标而设定的战略规划和开发人员体验图&#xff0c;在这一部分&#xff0c;我们将带您了解该团队如何构建最简可行平台以及该平台如何运作。 01 计划构建最简可行平台 我们通…

LeetCode //C - 605. Can Place Flowers

605. Can Place Flowers You have a long flowerbed in which some of the plots are planted, and some are not. However, flowers cannot be planted in adjacent plots. Given an integer array flowerbed containing 0’s and 1’s, where 0 means empty and 1 means no…

高通开发系列 - 功耗问题之添加CPU Idle和Hotplug的功能

By: fulinux E-mail: fulinux@sina.com Blog: https://blog.csdn.net/fulinus 喜欢的盆友欢迎点赞和订阅! 你的喜欢就是我写作的动力! 返回:专栏总目录 目录 概述CPU IdleCPU TopologyCPU Idle DriverCPU Idle GovernorCPU的hotplug函数

docker相关的命令

镜像管理命令 说明 docker images 查看本机镜像 docker search 镜像名称 从官方仓库查找镜像 docker pull 镜像名称:标签 下载镜像 docker push 镜像名称:标签 上传镜像 docker save 镜像名称:标签 -o 备份镜像名称.tar 备份镜像为tar包 docker load -i 备份镜像名…

ifconfig命令和ip命令

1.ifconfig ifconfig是Linux中用于显示和配置网络接口参数的命令。以下是一些常用的ifconfig命令选项&#xff1a; 查看所有网络接口的信息&#xff1a;ifconfig -a查看指定网络接口的信息&#xff0c;例如eth0&#xff1a;ifconfig eth0配置网络接口的IP地址、子网掩码和广播…

TCP/UDP 协议

目录 一.TCP协议 1.介绍 2.报文格式 ​编辑 确认号 控制位 窗口大小 3.TCP特性 二.TCP协议的三次握手 1.tcp 三次握手的过程 三.四次挥手 2.有限状态机 四.tcp协议和udp协议的区别 五.udp协议 UDP特性 六.telnet协议 一.TCP协议 1.介绍 TCP&#xff08;Transm…