上面的10篇博客我已经把自己学到的Mysql数据库的主要知识讲了一下,有数据库的创建、删除;表的创建、删除、修改;表的内容的增加、修改、删除;以及讲解了视图、触发器、索引、游标、存储过程和函数。现在我来说说mysql数据库中的数据类型与运算符。

mysql数据库支持多种数据类型,主要有字符串类型、数值类型、日期类型、二进制类型。

字符串类型:char(M):固定长度非二进制字符串;M(1-255)字节、varchar(M):变长非二进制字符串;L+1个字节,在此L<M且1<=M<=255、tinytext:非常小的非二进制字符串;L+1个字节,L<28;text:小的非二进制字符串L+2个字节,L<216;mediumtext:中等大小的非二进制字符串,L+3个字节,L<224;longtext:大的非二进制字符串,L+4个字节,L<232;enum:枚举类型;binary、varbinary、blob、text、set:一个集合,字符串对象可以有零个或多个set成员,1,2,3,4或8个字节,取决于集合成员的数量(最多64个成员)。

数值类型:tinyint:1个字节、smallint:2个字节、mediumint:3个字节、int[integer]:4个字节、bigint:8个字节、float:4个字节、double:8个字节、定点小数类型decimal:decimal(M,D)压缩的严格定点数;M称为精度,表示总共的位数;D称为标度,表示小数的位数。

二进制类型:bit(M):位字段类型,大约(M+7)/8个字节、binary(M):固定长度的二进制字符串,M个字节、varbinary(M):可变长度的二进制字符串,M+1个字节、tinyblob(M):非常小的blob,L+1个字节,此处L<28、blob(M):小blob,L+2个字节,此处L<216、mediumblob(M):中等大小的blob,L+3个字节,此处L<224、longblob(M):非常大的blob,L+4个字节,此处L<232。

日期类型:year:日期格式YYYY,日期范围1901~2155,存储需求:1个字节、

time:日期格式HH:MM:SS,日期范围-838:59:59~838:59:59,存储需求:3个字节、

date:日期格式YYYY-MM-DD,日期范围1000-01-01~9999-12-31,存储需求:3个字节、

datetime:日期格式YYYY-MM-DD HH:MM:SS,日期范围1000-01-01 00:00:00~9999-12-31 23:59:59,存储需求:8个字节、

timestamp:日期格式YYYY-MM-DD HH:MM:SS,日期范围1970-01-01 00:00:01~2038-01-19 03:14:07,存储需求:4个字节。

注:(1)year类型使用单字节表示年份,在存储时只需一个字节:以4位字符串或者4位数字格式表示YEAR,其范围为'1901'~'2155',输入格式为'YYYY'或YYYY。例如,输入'2015'或2015,插入到数据库的值都是2015;以2位字符串格式表示YEAR,范围为'00'到'99'。'00'~'69'和'70'~'99'范围的值分别被转换为2000~2069和1970~1999范围的YEAR值。输入‘0’与'00'取值相同,皆为2000。插入超过取值范围的值将被转换为2000;以2位数字表示YEAR,范围为1~99。1~69和70~99范围分别转换为2001~2069和1970~1999范围的YEAR值。

(2)time类型用在记录时间信息的值。需要3个字节来存储:a.‘D HH:MM:SS’格式的字符串,也可以使用一下任何一种‘非严格’的语法如‘HH:MM:SS’、‘HH:MM’、‘D HH:MM’、‘D HH’或‘SS’,其中D表示日,取值范围为0~34。再插入数据库时,D被转换为小时保存,格式为‘D*24+HH’。b.‘HHMMSS’格式的、没有分隔符的字符串或HHMMSS格式的数值,假定时间是有意义。不合法的时间被存储为00:00:00。

(3)date类型用在仅需要存储日期值的时候,不存储时间,存储需要3个字节。常用格式:1:'YYYY-MM-DD'或者'YYYYMMDD'格式的字符串;2:‘YY-MM-DD’或者'YYMMDD'字符串格式表示日期;3:以YYMMDD数值格式表示日期。可以使用CURRENT_DATE或者NOW()表示系统的当前时间。YY表示年是在输入70-99时被理解为1970-1999年;在00-69时被理解为2000-2069;

(4)datetime类型同时包含日期和时间信息,存储需要8个字节。常用格式:1:'YYYY-MM-DD HH:MM:SS'或者‘YYYYMMDDHHMMSS’字符串格式表示日期时间;2:'YY-MM-DD HH:MM:SS'或者'YYMMDDHHMMSS'字符串格式表示日期时间,YY含义和上面相同;3:以YYYYMMDDHHMMSS或者YYMMDDHHMMSS数值格式表示日期时间。()Mysql允许不严格的时间插入,任何标点符号都可以用作日期部分或时间部分的时间间隔。

(5)timestamp的显示格式与DATETIME相同,显示宽度固定在19字符。

Mysql的运算符:mysql中的运算符有:算术运算符、比较运算符、逻辑运算符、位操作运算符。

算术运算符:+、-、*、/、%求余;

比较运算符:>、<、=、>=、<=、!=、in、between and、is null、greatest(进行大小判断)、least、regexp

逻辑运算符:逻辑非(not 或者 !)、逻辑与(and 或者 &&)、逻辑或(OR或者||)、逻辑异或(XOR)

位操作运算符:&、|、~、^、<<、>>

mysql中也有许多函数,感兴趣的可以查阅mysql的API文档进行学习。这里有不一一说明了,这就是我初学mysql的所有东西,当然了一些高级的深入的东西我也还在学习当中,比如mysql备份,恢复,复制,日志管理,分布式应用,缓存的配置与使用等等,我会在后面阶段学习后来给大家说一说,以上的博客就是我的初学Mysql数据库的经验。

初学mysql(十一)之细枝末节-数据类型与运算符相关推荐

  1. C语言(第二章):数据类型、运算符、表达式

    .:.:第二章:数据类型.运算符.表达式:.:. 第二章: 数据类型.运算符.表达式 C语言的数据类型 在第一课中,我们已经看到程序中使用的各种变量都应预先加以说明,即先说明,后使用.对变量的说明可以 ...

  2. 深入浅出Mysql - 基础篇(列类型/运算符/函数)

    深入浅出Mysql - 基础篇(列类型/运算符/函数) 每一个常量.变量和参数都有数据类型,它用来指定一定的存储格式.约束和有效范围.MySQL提供了多种数据类型,主要包括数值型.字符串类型.日期和时 ...

  3. 笔记整理1----Java语言基础(一)01 变量与数据类型+02 运算符与表达式+03 条件判断与循环语句+04 JAVA数组+05 函数与方法

    01 变量与数据类型+02 运算符与表达式+03 条件判断与循环语句+04 JAVA数组+05 函数与方法 第01天 java基础知识 今日内容介绍  Java概述.helloworld案例  工 ...

  4. 初学Python(一)——数据类型

    初学Python(一)--数据类型 初学Python,主要整理一些学习到的知识点,这次是数据类型. #-*- coding:utf-8 -*- #整数 print 1 #浮点数=小数 print 1. ...

  5. c 结构体在声明时赋值_Java基础知识 初识Java 循环结构进阶 数组 数据类型 各种运算符...

    今天给大家带来的是初级Java基础部分的知识:包括初始Java.变量.常量.数据类型.运算符.各种选择结构.循环结构.数组等Java的基础语法部分!最后还有****循环结构的进阶****,步骤超详细, ...

  6. 15_clickhouse,MySQL引擎;MySQL和ClickHouse中数据类型的对应关系

    20.MySQL引擎 20.1.MySQL引擎 20.2.MySQL和ClickHouse中数据类型的对应关系 20.3.示例 20.MySQL引擎 20.1.MySQL引擎 MySQL引擎可实现对M ...

  7. Mysql学习笔记(三)运算符和控制流函数

    原文:Mysql学习笔记(三)运算符和控制流函数 本章学习内容: 1.操作符 2.控制流程函数 操作符: i.圆括号.. 简单的介绍一下圆括号,圆括号的使用的目的是规定计算表达式的顺序...这个想必大 ...

  8. 当c语言表达式中同时有字符 整数,c语言第2章数据类型、运算符与表达式a.ppt

    c语言第2章数据类型.运算符与表达式a C语言程序设计;本章主要学习任务;2.1 C的数据类型;注意:C语言中的数据有变量与常量,它们分别属于上述这些类型.;2.2 常量与变量;不是C语句,不必在行末 ...

  9. Python基础(二)--数据类型,运算符与流程控制

    目录 Python基础(二)--数据类型,运算符与流程控制 1 数据类型 1.1 Python中的数据类型 1.2 整数类型(int) 1.3 布尔类型 1.4 浮点类型 1.5 复数类型 1.6 类 ...

最新文章

  1. 【案例】城市地址三级联动
  2. 嵌入式Linux下S3C2410的调色板彩色显示
  3. 有些事儿,工程师可能今生仅此一次
  4. arraycopy方法的作用_System. arraycopy()入门指南
  5. 树莓派putty远程登录windows
  6. TCP 慢启动 拥塞控制
  7. 8_19 比赛总结 [暑假集训]
  8. UVA10344 23 out of 5【暴力+DFS】
  9. 2021年,产品经理是否仍在招聘风口?多年火热是否只是泡沫?
  10. C#如何快速高效地导出大量数据?
  11. 时隔两年,运维人必备的PuTTY 终于发布新版!
  12. 笔记本电脑禁用/启用自带键盘
  13. session钝化活化
  14. 研发团队专业能力提升
  15. 三维点图和三维PCA图
  16. 磁盘存储链式的B树与B+树
  17. 7年老Android一次操蛋的面试经历,讲的明明白白!
  18. 进程间通信的方式及原理
  19. sow工作任务说明书例子
  20. python圣诞雪人

热门文章

  1. RSA实现对文件的加密解密
  2. 互联网协议入门(一) 作者:阮一峰
  3. 国产安路FPGA 替代
  4. shell编程-运算符-环境变量-变量类型声明
  5. uboot启动第一阶段——start.S(二)
  6. LogStash基础笔记
  7. [Luogu P4292] [BZOJ 1758] [WC2010]重建计划
  8. 单招计算机网络考什么,单招考什么内容 单招一般考什么科目
  9. 热烈欢迎领导莅临指导主题PPT模板
  10. 昆明第十二中学计算机笔试题目,昆明市第十二中学2015年招考笔试、面试、课堂考核安排公告...