闵行网站建设公司纸/管理微信软件
字符类型:
-
tinyint(4):占1个字节,4代表字段值长度,用0填充,搭配zero fill使用
有符号:取值范围 负128 ~ 正127;
无符号:取值范围 0 ~ 255;
默认无符号; -
int(11):占4个字节,11代表字段值长度,用0填充,搭配zero fill才起作用
有符号:取值范围 负2开头10位数 ~ 正2开头10位数;
无符号:取值范围 0 ~ 正4开头10位数,使用unsigned设置;
默认无符号; -
bigint(20):占8个字节,20代表字段值长度,用0填充,搭配zero fill才起作用
有符号:取值范围 负9开头19位数 ~ 正9开头19位数;
无符号:取值范围 0 ~ 正18 开头20位数,使用unsigned设置;
默认无符号;
注1:在32位操作系统中,可能会出现内存溢出问题;
注2:手机号是字符串,不是数字,所以不建议使用bigint; -
char(n):定长字符串,英文字符占n个字节,中文utf8格式,占用n*3个字节;n表示字符长度,中英文相同;
注:字段全部是国内手机号时,建议使用char(11); -
varchr(n):可变长字符串,有效字节数65532;1~ 3个字节存储数据大小
utf8格式:n最大值 = 65532/3;
gbk格式:n最大值 = 65532/2;
注:当一个字段用来存储:座机和手机号时,建议使用; -
其余字符类型:
datetime:时间格式
text:文本,最多可存储64 kb
decimal:金额
mysql函数
max:最大值
min:最小值
count:行数
sum:总和
avg:平均值
ifnull:是否为空
if:控制语句
case:搜索语句
如何设计数据库?
1:三范式:
原子性:列、字段的不可拆分
唯一性:设置主键
冗余性:设置字段与主键的直接关联关系
2:表的拆分:根据业务场景进行逻辑拆分(一对一、一对多、多对多)
3:选择数据库引擎 innodb 或 myisam
4:添加索引(注:单表索引最好不超过5个)
5:单表字段最好不超过20个
6:合适的字段类型(使用小类型替代大类型,比如tinyint 代替int,或int代替bigint)
7:逻辑删除代替物理删除
8:字段添加注释
一张表最多能创建多少个字段?
innodb引擎:一张表最多可创建1000个字段
如果创建一个没有主键的表会怎样?
可以创建成功,但mysql会默认创建一个隐藏的聚簇索引,后续再创建主键时,会更改布局,新建一个聚簇索引
myisam和innodb引擎的区别?
innodb引擎:支持事务、支持外键,是聚簇索引,行级锁;
5.5之后的默认引擎,5.7之后支持全文检索
myisam引擎:不支持事务和外键,是非聚簇索引,表级锁;
MySQL常见索引?
主键索引、普通索引、联合索引、唯一索引(数据的唯一,一张表可以有多个唯一索引)、空间索引
如何创建索引?注意事项?
哪些适合创建索引?
1:字段值有唯一性限制时,必须建成唯一索引
2:where子句中的条件字段,创建索引
3:group by和order by的列,创建索引
4:连表时的关联字段,加索引,且在所有表中,字段名和字段类型保持一致
5:使用类型小的列,创建索引;如:能用int就不用bigint
6:字符串字段,使用前缀索引
7:使用最频繁的列,放在联合索引的左侧
8:多个字段都要创建索引时,联合索引优于单值索引
哪些不适合创建索引?
1:where子句中不使用的字段,不建索引
2:数据量小的表,不建索引(300条以内不用加)
3:大量重复数据的列,不建索引(重复度高于10%,不适合建索引)
4:经常更新的表,少建索引
5:不建议用无序的值作为索引;例:哈希,md5,无序长字符串
6:删除不再使用或使用率少的索引
7:不重复定义索引;例:联合索引中的字段,不需要单独再创建索引
主键索引和唯一索引的区别?
1:主键一定包含唯一,但唯一不一定是主键
2:主键不能为空,唯一可以为空
3:一个表只能有一个主键,但可以有多个唯一
4:主键可以做为其他表的外键
注:null会破坏索引结构,可能会导致该列不走索引,唯一索引可以有多个null,因为null是未知,多个未知不代表重复,但null值不被记录在索引上;唯一索引上只能有一个空字符串,不能有多个
主键可以被修改吗?
1:主键值不能修改,只能删除后,重新添加
2:主键字段,可以修改(id是主键改为name是主键),但一般不这么做,一般情况会将ID的主键属性删除,然后给name添加主键
索引优化方案?
前缀索引、覆盖索引、主键自增、not null、防止索引失效
前缀索引:在字段中字符串的前几个字符建立索引,如:邮箱字段中@符号之前的字符创建索引;
注:order by 无法使用前缀索引,进行索引覆盖
覆盖索引:select 查询字段,可以通过where子句中的索引列来实现,既查询字段值在索引的叶子节点中存在,不需要回表就可以返回结果
什么是MySQL回表?
以innodb为例,如果不使用主键索引查询,且查询结果列不在where子句中的索引列中,就会先由子句索引中的二级索引,查询索引树,找到对应的主键ID,再通过主键ID的索引树,去查询所在行数据,但myisam不同,它的主键索引也没保存行数据,所以无论怎样都会回表;回表会导致多次io,消耗更多资源
简答:如果innodb,不使用主键做条件查询,并且查询结果包含了除条件外的其他字段,就无法一次性得到结果,就必须先查到主键, 再使用主键去索引树中,找到对应的全部数据
索引失效原因?
1:模糊查询以%开头
2:where子句中,对索引做运算,函数
3:联合索引要正确使用最左匹配原则
4:where子句中,or前是索引,or后不是索引,也会导致索引失效
5:索引列存在null值,也会导致索引失效
6:字符串类型,不加引号不走索引,加引号才走索引,int类型加不加都走索引
索引最左匹配原则?
以a、b、c三个字段,做联合索引为例:它会生成三个索引,分别是:(a)、(a、b)、(a、b、c)
在联合索引查询时,优先走最左侧索引:where子句中必须以a为起点,直到遇到范围查询(>,<)为止,之前的字段(包括范围查询字段)都会走索引,但范围之后的索引失效
原因:范围查询之前的索引是有序的,而范围之后的索引是无序的
MySQL优化方案:
1:尽量全值匹配(=)
2:最左匹配原则
3:不对索引列做任何操作
4:尽量使用覆盖索引
5:不等于、like要慎用
6:字符串类型索引,要加引号
SQL性能优化
1:不能使用select *,失去了覆盖索引的效果
2:小表驱动大表时使用in,不使用exists
3:批量插入代替循环插入
4:用limit限制返回条数
5:分页查询优化,页码增大时,查询效率降低,可以借助上次查询最大id,做条件过滤
6:缩小数据集的条件放前面,能排除大量数据的条件放前面
7:连表查询尽量不超过3张表
i
in和exists的区别?
exists:是先查前表中所有数据,然后过滤后面的子句,是否有包含
in:是先执行子句,再通过结果去前表中查询结果集
in走不走索引?
in通常是走索引的,但当in后面的数据集,在表中超过30%的匹配时,是不走索引,而是全表扫描
between、in、or的效率对比
between最快,in次之,or最慢
between > in > or
全文检索
字段类型:fulltext(全文索引)
设置全文索引:fulltext(字段名) with parser ngram comment ‘index_type=smartcn’
查询方式:match(字段名) against(‘搜索信息’)
smartcn:分词器插件,提高中文查询准确率
boolean:高级搜索【‘+要查询信息 且不包含信息’in boolean mode】
自定义分词器:用特殊符号,将字段按自己需求切割成自定义 分词
相关文章:

PHP面试宝典之Mysql数据库基础篇
字符类型: tinyint(4):占1个字节,4代表字段值长度,用0填充,搭配zero fill使用 有符号:取值范围 负128 ~ 正127; 无符号:取值范围 0 ~ 255; 默认无…...

4月记录总结
4/24 1.GBK12、16、24是指什么 GBK12、GBK16、GBK24是指不同的字体点阵大小,也就是字体的显示大小。在GBK编码中,一个汉字通常是由多个点阵组成的,其中点阵的大小就是字体的点阵大小。具体来说: GBK12:指每个汉字由12…...

每日学术速递4.29
CV - 计算机视觉 | ML - 机器学习 | RL - 强化学习 | NLP 自然语言处理 Subjects: cs.LG 1.A Cookbook of Self-Supervised Learning 标题:自监督学习食谱 作者:Randall Balestriero, Mark Ibrahim, Vlad Sobal, Ari Morcos, Shashank Shekhar, Tom…...

整数在内存中的存储:原码、反码、补码 大小端字节序
本篇博客会讲解整数在内存中的存储形式,以及整数二进制的3种表示形式:原码、反码、补码,还有大小端的相关知识点。相信读完本篇博客,大家对内存的了解会上一个台阶。 注意:本篇博客讨论的是整数在内存中的存储&#x…...

【方法】 如何批量将RAR或其他压缩格式转换成ZIP?
压缩文件的格式有很多种,比如RAR、ZIP、7-Zip、CAB、ARJ、ACE、TAR、BZ2等等。因为需求不同,或者不同平台对上传的压缩包格式要求不同,我们往往需要把压缩文件进行格式转换,那压缩文件不同格式之间如何进行转换呢? 如…...

《道德经》
《道德经》是春秋时期老子(李耳)的哲学作品,又称《道德真经》、《老子》、《五千言》、《老子五千文》,是中国古代先秦诸子分家前的一部著作,是道家哲学思想的重要来源。 道德经分上下两篇,原文上篇《德经…...

ABI Research产业研究:ZiFiSense如何革新物流货物及运输包装追踪
“文章源自前沿科技研究机构ABI Research产业研究,重点介绍了ZETA LPWA协议开发公司纵行科技在业务发展、M-FSK调制技术以及ZETag云标签系列产品在物流货物追踪与包装管理等方面的应用分析,还分享了纵行科技ZETA技术在商业市场和生态系统方面的发展情况。…...

家乡特色推荐系统~java~mysql
摘 要 在Internet高速发展的今天,我们生活的各个领域都涉及到计算机的应用,其中包括家乡特色推荐的网络应用,在外国家乡特色推荐系统已经是很普遍的方式,不过国内的管理网站可能还处于起步阶段。家乡特色推荐系统采用java技术&…...

二维码在设备点维一体化管理中的应用
随着科技发展,设备点维一体化管理体系应运而生,该管理体系的出现让设备维护保养变得更加高效精细化。 设备点维一体化管理体系以设备点检和维护保养为基础,通过日常、专业及精密点检,对点检测得的数据和设备给油脂保养情况进行统…...

基于simulink使用混合波束成形对射频毫米波发射器进行建模
一、前言 本例说明了一种使用66元件混合波束成形天线对32 GHz QPSK射频发射和接收系统进行系统级建模和仿真的方法。该系统包括射频缺陷、发射阵列辐射效应、窄带接收阵列和基带接收器,可校正系统损伤和消息解码。天线波束形成方向使用方位角和仰角定义,…...

面试官:v-model原理?
什么是v-model v-model是Vue框架中的一个指令,用来实现双向数据绑定。它能够在表单元素(如输入框、复选框等)和Vue实例中的数据属性之间建立起一条双向数据通道,使得当表单元素的值发生改变时,对应的数据属性也会相应…...

兰林:科技赋能健康产业 助力乡村振兴建设
万民健康创始人 万民智养中医创始人 万民星农CEO兰林 党建引领谋发展 , 旗帜下乡促振兴 。 乡村振兴,健康先行。自党的十八大以来,国家卫健委贯彻落实“以基层为重点”的党的卫生与健康工作方针,推动医疗卫生工作重心下移、资源下…...

小红书流量密码是什么,怎么掌握并运用
现在是个流量的社会,因为流量其实代表的就是收益,那面对一个流量时代,小红书现在而言毫无疑问是蓝海,品牌想要做好,自然要掌握平台流量密码。今天来和大家一起分享一下小红书流量密码有什么,流量密码可以用…...

FL Studio 2023中文高级版水果编曲软件下载
FL Studio 2023中文版是一款非常经典的音乐制作软件,这款软件除了可以为用户提供全面的音乐制作功能之外,还有丰富的主题和皮肤供用户选择,让用户不但做出的音乐具有自己的风格,连制作的音乐的过程也个性十足,非常适合…...

浅析如何写出高质量代码
你是否曾经为自己写的代码而感到懊恼?你是否想过如何才能写出高质量代码?那就不要错过这个话题!在这里,我们可以讨论什么是高质量代码,如何写出高质量代码等问题。无论你是初学者还是资深开发人员,都可以在…...

手把手教你 ,带你彻底掌握八大排序算法【数据结构】
文章目录 插入排序直接插入排序希尔排序 选择排序选择排序堆排序升序 交换排序冒泡排序快速排序递归hoare版本挖坑法前后指针版本 非递归Hoare挖坑法前后指针 快排的优化三数取中法选key递归到小的子区间时,可以考虑使用插入排序 归并排序递归实现非递归实现 排序算…...

第十一章 Transform组件(上)
本章节我们介绍Transform类,它是一个组件,每一个游戏对象有拥有该组件。因此,它值得我们重点介绍一下。Transform代表了游戏对象的世界变换,也就是移动,选择和缩放。 首先,我们先介绍它的属性(…...

aac音频怎么转mp3,这几个方法很简便
对于aac来说,其是一种高级音频编码,也是专门为声音数据设计的文件压缩格式。通常来说,aac与mp3有一些不同。aac使用了全新的算法进行编码的,其整体的效率较mp3更高一些。同时,aac格式的音质较好一些。但是,…...

分屏视图上线,详情数据秒切换
分屏视图 路径 表单 >> 表单设计 功能简介 新增「分屏视图」。分屏视图是一种对数据阅读提供沉浸式体验的视图组织形式,用户可通过分屏视图更快速的查看数据详情。 使用场景: 对于数据类型是「订单」数据的表单,管理人员往往会对…...

怎么释放C盘空间?清理C盘空间的4大方法分享!
案例:怎么释放c盘空间 【朋友们,最近我的c盘空间内存严重不足了,想释放一下c盘的空间,大家有什么好的方法吗?】 在使用电脑的过程中,经常会遇到C盘空间不足的问题,这时候就需要释放C盘的空间。…...

【文件描述符|重定向|缓冲区】
1 C语言文件操作的回顾 这块博主在讲解C语言时就已经做了很详细的讲解,这里就不详细讲了,直接给出代码。 写操作: #include<stdio.h> #include<stdlib.h> #include<errno.h> #define LOG "log.txt" …...

软件测试—进阶篇
软件测试—进阶篇 🔎根据测试对象划分界面测试可靠性测试容错性测试文档测试兼容性测试易用性测试安装卸载测试安全性测试性能测试内存泄漏测试 🔎根据是否查看代码划分黑盒测试白盒测试灰盒测试 🔎根据开发阶段划分单元测试集成测试系统测试…...

设计模式:创建型设计模式、结构型设计模式
目录 前言如何学习设计模式?设计模式基础设计原则 一. 创建型设计模式1. 模板方法2. 观察者模式3. 策略模式 二. 结构型设计模式1. 单例模式2. 工厂模式3. 抽象工厂4. 责任链5. 装饰器6. 组合模式 前言 如何学习设计模式? 明确目的 在现有的设计模式上…...

如何选择多参数水质分析仪?
如何选择适合的多参数水质分析仪? 首先水质检测仪分为实验室(台式)和户外使用的便携式多参数水质检测仪。我们呢就要了解自己的需 求使用在什么领域,根据使用领域选择仪器;其次就是选择需要测定的指标,最好…...

明确自动化测试目的
明确自动化测试目的 1.提高测试人员的工作成就感和幸福感,减少手工测试中重复性的工作 目前,在大部分中小企业中,手工测试在日常测试工作占据的比例很大。测试人员必须跟随开发团队不断地进行选代式开发和测试。一个功能模块可能在整个测试周…...

DevExpress.XtraGrid.GridControl导出excel需要添加表头
string head ""; head "单号 \t" txtcCode.Text ; string foot ""; foot "制单人 \t" "制单日期 \t" "审核人: \t" "审核日期 \t" "修改人 \t&q…...

守护进程Daemon
进程组、对话期和控制终端关系 每个会话有且只有一个前台进程组,但会有0个或者多个后台进程组。产生在控制终端上的输入(Input)和信号(Signal)将发送给会话的前台进程组中的所有进程。对于输出(Output&…...

学生成绩管理系统 002
学生成绩管理系统 *****************学生成绩管理系统***************** 1、成绩添加 2、成绩输出 3、成绩查询 4、成绩统计 5、成绩排名 6、成绩删除 7、成绩修改 8、成绩按学号排序 0、退出系统 ************************************************** 请选择功能:1 **********…...

换个花样玩C++(4)细聊C++的引用精妙之处
引用是C++引入的新语言特性。而且在日常工作开发过程中,经常会使用到引用,对于一些做系统架构的架构师而言,这也是不可或缺的一门基本功,我在工作中发现,很多人并没有搞清楚引用。因此我在本篇中将对引用进行详细讨论,希望对大家更好地理解和使用引用起到抛砖引玉的作用。…...

Linux安装helm
前言 运行环境:CentOS7.9 官方参考文档:官方文档 文章末尾附有一键安装脚本 下载安装包 github下载对应版本的安装包,下载地址 进入对应版本的下载页面,这里以v3.11.3为例 选择对应系统的安装包,这里以linux为例 …...