mysql外键

什么是DBMS,DBMS就是数据库管理系统

分为关系型DBMS和非关系型DBMS

比如常用的MySQL,SQL Server Oracle和MongoDB,Redis

SQL即结构化查询语言,它只有6个常用动词,增insert删delete查select改update创建create授权grant

SQL可以分为三大类

1、数据定义语言

2、数据操纵语言

3、数据控制语言

中文排序

select name,price from fruit order by convert(name using gbk);

多值子查询

in all any和some

select name,price from fruit where season='夏' and price>all(

select price from fruit where season='秋'

);

 

select name,price from fruit where season='夏' and price=any(

select price from fruit where season='秋'

);

 

=any等价于in

<>all等价于not in

 

四舍五入round

截取小数truncate

获取符号sign 1正数-1负数

向上取整ceil

向上取整floor

类型转换cast

if函数语法

if(条件,值1,值2)

如果条件为真就返加值1,如果条件为假就返回值2

select name as 名称,

if(price>=20,'高价','一般') as 评级

from fruit;

 

ifnull函数

ifnull(列名,新值)

如果某一列不为null,就显示原值,如果某一列为null,就显示新值

select name as 名称,

ifnull(type,'未知') as 类型

from fruit;

 

replace语句

在mysql中,如果待插入的数据中包含与已有数据的主键值相同的主键值或unique列值,那么使用insert语句将无法成功插入,而只有使用replace语名才行。

truncate语句属于数据定义语句,一次性删除所有行,并且不在日志里记录,只记录整个数据页的释放操作,所以处理速度快,性能高,使用系统的资源少,执行truncate后自增字段的值被重置为1

delete删除逐行删除,每删除一行就在日志里记录一次,速度慢

create table like 会复制表的完整结构包括主键,自动递增,索引等,只能复制结构,不能复制数据

create table as 不会复制主键,自动递增和索引,可以复制数据

 

条件检查

mysql8新增的属性

season varchar(10) check(season in('春‘,’夏‘,’秋‘,’冬'))

 

外键

 






发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: