欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Mysql第五章小结--数据类型和运算符

程序员文章站 2022-07-04 19:18:40
...

目录

  • Mysql数据类型介绍
  • 如何选择数据类型
  • 常见运算符介绍
  • 综合案例之运算符的总结

Mysql数据类型介绍

数据类型主要有下面几种
Mysql第五章小结--数据类型和运算符

整数类型

整数数据类型主要有一下几种:
Mysql第五章小结--数据类型和运算符
不同的数据类型取值范围如下:
Mysql第五章小结--数据类型和运算符
注意INT(num)中的数和取值范围无关
Mysql第五章小结--数据类型和运算符


浮点数类型和定点数类型

Mysql第五章小结--数据类型和运算符
注意浮点数和定点数的使用场合:
Mysql第五章小结--数据类型和运算符


时间和日期类型

Mysql第五章小结--数据类型和运算符

Year

Mysql第五章小结--数据类型和运算符
Mysql第五章小结--数据类型和运算符

0表示0000,‘0’和‘00’表示2000,‘78’和78表示1978,‘68’和68表示2068

Time

Mysql第五章小结--数据类型和运算符

create table tmp4(t Time);
delete  from tmp4;
insert into tmp4 values('10:05:05'),('23:23'),('2 10:10'),('3 02'),('10'),(now()),(current_time);

效果
Mysql第五章小结--数据类型和运算符


Date

Mysql第五章小结--数据类型和运算符

create table tmp5(d Date);
insert into tmp5 values('1998-09-01'),('19980902'),('980903'),(19980904),(980905),(100906),(000907),(current_date);

效果
Mysql第五章小结--数据类型和运算符

DateTime

Mysql第五章小结--数据类型和运算符

create table tmp6(dt DateTime);
insert into tmp6 values('1998-08-08 08:08:08'),('19980809080808'),('98-08-08 08:08:08'),('980808080808'),(19980808080808),(980808080808);

效果
Mysql第五章小结--数据类型和运算符

TimeStamp

Mysql第五章小结--数据类型和运算符
Mysql第五章小结--数据类型和运算符
TimeStamp把时区修改之后查询结果就会不同,但是DateTime不会


文本字符串类型

Mysql第五章小结--数据类型和运算符

char和varchar类型

char数据类型长度不可变,varchar长度可变
Mysql第五章小结--数据类型和运算符

create table tmp8(ch char(4),vch varchar(4));
insert into tmp8 values('ab  ','ab  ');
select concat('(',ch,')'),concat('(',vch,')') from tmp8;

看效果vch中的空格没有被截取
Mysql第五章小结--数据类型和运算符

Text类型

Mysql第五章小结--数据类型和运算符
Enum类型
Mysql第五章小结--数据类型和运算符

create table tmp9(enm Enum('first','second','third'));
insert into tmp9 values('first'),('second'),('third'),(null);
select enm,enm+0 from tmp9;

Mysql第五章小结--数据类型和运算符
再看一个实例

create table tmp10(soc int ,level enum('excellent','good','bad'));
insert into tmp10 values(70,'good'),(90,1),(75,2),(50,3); #'excellent','good','bad'-->对应 1,2,3
select soc,level,level+0 from tmp10;
insert into tmp10 values(100,4); #没有4这个选项

效果
Mysql第五章小结--数据类型和运算符

Set类型

Mysql第五章小结--数据类型和运算符

#自动排序去重
create table tmp11(s set('a','b','c','d'));  #只能插入a,b,c,d这四个值
insert into tmp11 values('a'),('a,b,a'),('c,a,d');
select *from tmp11;

效果
Mysql第五章小结--数据类型和运算符


二进制字符串类型

Mysql第五章小结--数据类型和运算符

Bit类型

保存的是数的二进制表示
Mysql第五章小结--数据类型和运算符

#bit
create table tmp12(b bit(4));
insert into tmp12 values(2),(9),(15);
insert into tmp12 values(16);#报错,只能存到0-15
select b,b+0 from tmp12;

效果
Mysql第五章小结--数据类型和运算符

Binary和varBinary

Mysql第五章小结--数据类型和运算符

#binary和varbinary
create table tmp13(b binary(3),vb varbinary(30));
insert into tmp13 values(5,5);
select length(b),length(vb) from tmp13;

效果如图
Mysql第五章小结--数据类型和运算符

Blob类型

Mysql第五章小结--数据类型和运算符


如何选择数据类型

Mysql第五章小结--数据类型和运算符
Mysql第五章小结--数据类型和运算符
Mysql第五章小结--数据类型和运算符
Mysql第五章小结--数据类型和运算符


常见运算符介绍

Mysql第五章小结--数据类型和运算符
注意一下比较运算符
Mysql第五章小结--数据类型和运算符
Mysql第五章小结--数据类型和运算符
注意两个相等运算符的微小差异
Mysql第五章小结--数据类型和运算符
Mysql第五章小结--数据类型和运算符
Mysql第五章小结--数据类型和运算符
正则表达式也是很重要的
Mysql第五章小结--数据类型和运算符
看一个例子

select 'ssky' regexp '^s','ssky' regexp 'y$', 'ssky' regexp '.sky', 'ssky' regexp '[ab]';

效果
Mysql第五章小结--数据类型和运算符


逻辑运算符

Mysql第五章小结--数据类型和运算符
Mysql第五章小结--数据类型和运算符

位运算

这个和别的语言里面差不多,不细说

运算符的优先级

Mysql第五章小结--数据类型和运算符

综合案例-运算符的使用

create table tmp15(note varchar(100),price int);
insert into tmp15 values("Thisisgood",50);
#算术运算符
select price,price+10,price-10,price*2,price/2,price%3 from tmp15;
#比较运算符
select price,price>10,price<10,price != 10,price = 10,price <=>10,price <>10 from tmp15;
select price,price between 30 and 80,greatest(price,70,30),price in(10,20,50,35) from tmp15;

select note,note is null,note like 't%',note regexp '$y',note regexp '[gm]' from tmp15;

select price,price&2,price|4, ~price from tmp15;

select price,price<<2,price>>2 from tmp15;
相关标签: mysql