版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章MySQL数据类型与运算符01MySQL数据类型03AI辅助编程02MySQL运算符MySQL数据类型1主要内容数字类型1字符串类型2日期和时间数据类型3数字类型数字类型整数数据类型浮点数据类型整数数据类型数据类型取值范围说
明单
位TINYINT有符号值:-128~127无符号值:0~255最小的整数1字节BIT有符号值:-128~127无符号值:0~255最小的整数1字节BOOL有符号值:-128~127无符号值:0~255最小的整数1字节SMALLINT有符号值:-32768~32767无符号值:0~65535小型整数2字节MEDIUMINT有符号值:-8388608~8388607无符号值:0~16777215中型整数3字节INT有符号值:-2147683648~2147683647无符号值:0~4294967295标准整数4字节BIGINT有符号值:-9223372036854775808~9223372036854775807无符号值:0~18446744073709551615大整数8字节浮点数据类型数据类型取值范围说
明单
位FLOAT+(-)3.402823466E+38单精度浮点数8或4字节DOUBLE+(-)1.7976931348623157E+308+(-)2.2250738585072014E-308双精度浮点数8字节DECIMAL可变精度确定的小数类型,可以单独指定精度(该数的最大位数)和标度(小数点后面的位数)自定义长度DECIMAL(8,2)120.6666666667数字类型如何选择合适的数字类型?选择最小的可用类型,如果值永远不超过127,则使用TINYINT比INT强。对于完全都是数字的,可以选择整数类型。浮点类型用于可能具有小数部分的数。数字类型某表的字段a和b的数据类型分别为INT(4)和INT,向表中插入111111和22222222,查询这两个字段的值。实例字符串类型字符串类型普通的文本字符串类型可变类型特殊类型普通的文本字符串类型数据类型取值范围说
明[national]char(M)[binary|ASCII|unicode]0~255个字符固定长度为M的字符串,其中M的取值范围为0~255。National关键字指定了应该使用的默认字符集。Binary关键字指定了数据是否区分大小写。ASCII关键字指定了在该列中使用latin1字符集。Unicode关键字指定了使用UCS字符集char0~255个字符与char(M)类似[national]varchar(M)[binary]0~255个字符长度可变,其他和char(M)类似Char(10)可变类型数据类型最大长度(字节数)说
明TINYBLOB2^8~1(225)小BLOB字段BLOB2^16~1(65535)常规BLOB字段MEDIUMBLOB2^24~1(16777215)中型BLOB字段LONGBLOB2^32~1(4294967295)长BLOB字段TINYTEXT2^8~1(225)小TEXT字段TEXT2^16~1(65535)常规TEXT字段MEDIUMTEXT2^24~1(16777215)中型TEXT字段LONGTEXT2^32~1(4294967295)长TEXT字段BLOBTEXT特殊类型数据类型最大值说
明Enum(“value1”,“value2”,…)65535该类型的列只可以容纳所列值之一或为NULLSet(“value1”,“value2”,…)64该类型的列可以容纳一组值或为NULL字符串类型如何选择合适的字符串类型?从速度方面考虑,要选择固定的列,可以使用CHAR类型。要节省空间,使用动态的列,可以使用VARCHAR类型。要将列中的内容限制在一种选择,可以使用ENUM类型。允许在一个列中有多于一个的条目,可以使用SET类型。如果要搜索的内容不区分大小写,可以使用TEXT类型。如果要搜索的内容区分大小写,可以使用BLOB类型。日期和时间数据类型日期和时间数据类型数据类型取值范围说
明DATE1000-01-01~9999-12-31日期,格式YYYY-MM-DDTIME-838:58:59~835:59:59时间,格式HH:MM:SSDATETIME1000-01-0100:00:00~9999-12-3123:59:59日期和时间,格式YYYY-MM-DDHH:MM:SSTIMESTAMP1970-01-0100:00:00~2037年的某个时间时间标签,在处理报告时使用的显示格式取决于M的值YEAR1901~2155年份可指定两位数字和四位数字的格式日期和时间数据类型某表的字段time的数据类型是TIME类型,向表中插入CURRENT_TIME和NOW()。实例MySQL运算符2主要内容算术运算符1比较运算符2逻辑运算符3位运算符4运算符的优先级5算术运算符算术运算符符
号作
用+加法运算-减法运算*乘法运算/除法运算%求余运算DIV除法运算,返回商。同“/”MOD求余运算,返回余数。同“%”算术运算符使用算术运算符对m表中ss字段值进行加、减、乘、除运算。实例比较运算符比较运算符运算符名称示例运算符名称示例=等于id=5ISNOTNULLn/aidISNOTNULL>
大于id>5BETWEENn/aidBETWEEN1and15<
小于id<5INn/aidIN(3,4,5)>=大于等于id=>5NOTINn/anameNOTIN(‘shi’,‘li’)<=小于等于id<=5LIKE模式匹配nameLIKE‘shi%’!=或<>不等于id!=5NOTLIKE模式匹配nameNOTLIKE‘shi%’ISNULLn/aidISNULLREGEXP常规表达式name正则表达式比较运算符运算符“=”1
运算符“=”用来判断数字、字符串和表达式等是否相等。如果相等,则返回1;否则返回0。比较运算符运用“=”运算符查询记录。实例比较运算符运算符“<>”和“!=”2
“<>”和“!=”用来判断数字、字符串、表达式等是否不相等。如果不相等,则返回1;否则,返回0。这两个符号也不能用来判断空值(NULL)。比较运算符运用“<>”和“!=”运算符判断m表中ss字段值是否等于24、22、20、null。实例比较运算符运算符“>”3
“>”用来判断左边的操作数是否大于右边的操作数。如果大于则返回1;否则返回0。同样空值(NULL)不能使用“>”来判断。比较运算符使用“>”运算符分别判断m表中ss字段值是否大于30、是否大于19,是则返回1,否则返回0,空值返回NULL。实例比较运算符运算符“ISNULL”4
“ISNULL”用来判断操作数是否为空值(NULL)。操作数为NULL时,结果返回1;否则返回0。ISNOTNULL刚好与ISNULL相反。比较运算符运用ISNULL运算符来判断m表中ss字段值是否为空值。实例比较运算符运算符“BETWEENAND”5
“BETWEENAND”用于判断数据是否在某个取值范围内。表达式如下:x1BETWEENmANDn比较运算符运用“BETWEENAND”运算符判断m表中,ss字段的值是否在17~23及21~26之间。实例比较运算符运算符“IN”6
“IN”用于判断数据是否存在于某个集合中。表达式如下:x1IN(值1,值2,…,值n)比较运算符运用“IN”运算符判断m表中ss字段的值是否在某个集合中实例比较运算符运算符“LIKE”7“LIKE”用来匹配字符串。表达式如下:x1LIKEs1比较运算符使用“LIKE”运算符,判断m2表中的user字段值是否与指定的字符串匹配。实例比较运算符运算符“REGEXP”8
“REGEXP”同样用于匹配字符串,但其使用的是正则表达式进行匹配。表达式如下:x1REGEXP'匹配方式'比较运算符使用“REGEXP”运算符来匹配user字段的值是否以指定字符开头、结尾,同时是否包含指定的字符串。实例逻辑运算符逻辑运算符符号作用&&或AND与||或OR或!或NOT非XOR异或逻辑运算符与运算1
“&&”或者“AND”是与运算的两种表达方式。如果所有数据不为0且不为空值(NULL)时,结果返回1;如果存在任何一个数据为0时,结果返回0;如果存在一个数据为NULL且没有数据为0时,结果返回NULL。逻辑运算符使用“&&”运算符进行逻辑运算。实例逻辑运算符或运算2
“||”或者“OR”表示或运算。所有数据中存在任何一个数据为非0的数字时,结果返回1;如果数据中不包含非0的数字,但包含NULL时,结果返回NULL;如果操作数中只有0时,结果返回0。逻辑运算符使用“OR”运算符进行逻辑运算。实例逻辑运算符非运算3
“!”或者NOT表示非运算。通过非运算,将返回与操作数据相反的结果。如果操作数据是非0的数字,结果返回0;如果操作数据是0,结果返回1;如果操作数据是NULL,结果返回NULL。逻辑运算符使用“!”运算符进行逻辑运算。实例逻辑运算符异或运算4XOR表示异或运算。只要其中任何一个操作数据为NULL时,结果返回NULL;其基本形式是“x1XORx2”,如果x1和x2都是非0的数字或者都是0时,结果返回0,如果x1和x2中一个是非0,另一个是0时,结果返回1。逻辑运算符使用“XOR”运算符进行逻辑运算。实例位运算符符
号作
用&按位与。进行该运算时,数据库系统会先将十进制的数转换为二进制的数。然后对应操作数的每个二进制位上进行与运算。1和1相与得1,与0相与得0。运算完成后再将二进制数变回十进制数|按位或。将操作数化为二进制数后,每位都进行或运算。1和任何数进行或运算的结果都是1,0与0或运算结果为0~按位取反。将操作数化为二进制数后,每位都进行取反运算。1取反后变成0,0取反后变成1^按位异或。将操作数化为二进制数后,每位都进行异或运算。相同的数异或之后结果是0,不同的数异或之后结果为1<<
按位左移。“m<<n”表示m的二进制数向左移n位,右边补上n个0。例如,二进制数001左移1位后将变成0010>>
按位右移。“m>>n”表示m的二进制数向右移n位,左边补上n个0。例如,二进制数011右移1位后变成001,最后一个1直接被移出运算符的优先级优先级运算符1!2~3^4*,/,DIV,%,MOD5+,-6>>,<<7&8|9=,<=>,<,<=,>,>=,!=,<>,IN,IS,NULL,LIKE,REGEXP10BETWEENAND,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026澳洲超市面试题及答案
- 2026安顺地区面试题及答案
- 碳化钛制备工岗前安全实践考核试卷含答案
- 焙烧炉焙烧工安全操作知识考核试卷含答案
- 玻璃退火工达标竞赛考核试卷含答案
- 印花辊筒激光雕刻工安全生产基础知识竞赛考核试卷含答案
- 电子病历共享合同(2026年隐私保护版)
- 道路货运调度员成果转化评优考核试卷含答案
- 家具设计师岗前工作规范考核试卷含答案
- 机动车检测工诚信品质能力考核试卷含答案
- 2026年芜湖市运达轨道交通建设运营有限公司对外招聘考试备考题库及答案解析
- 2026年广东公务员遴选考试题库及答案
- 2026年广东高考地理题考点及完整答案
- 老年人营养配餐与慢性病管理
- 湖南农业发展投资集团有限责任公司2026年校园招聘笔试历年备考题库附带答案详解
- 2026年透析护理护士试卷及答案
- 生鲜超市门面房租赁协议
- 2025年甘肃省兰州市中考英语真题(含答案)
- 2026年写字楼物业试题及答案
- 2025年贵州省高考物理试卷真题(含答案)
- 《PCB工艺与设计》课件-155.PCB的拼板实例演示
评论
0/150
提交评论