通用语法
分类
DDL数据定义语言
DDL用来定义数据库对象
操作数据库
注:[ ]为可选项
操作表
注:需要先通过use进入数据库
创建表
示例:
创建表
查询表与表结构:
查询创建时使用的语句:
数据类型
主要类型:数值类型、字符串类型、日期时间类型
数值类型
精度:整个数值的长度;标度:小数点后的长度。比如:123.45的精度为5,标度为2
使用double时,需要采用double(4,1)这种形式,即对应double(精度, 标度)
字符串类型
重点关注char与varchar,后面的一般会用专门的文件服务器进行存储
使用char与varchar是一般会带参数,比如char(10)与varchar(10),则代表最多使用10个字符,多了会报错,区别在于使用char即使只使用2个字符也会存入10个字符,而varchar则是使用多少存多少,但是由于varchar需要通过计算才能知道实际占用多少,因此性能较差
日期时间类型
案例
修改表
添加字段:
修改数据类型 或 字段名 字段类型:
删除字段:
修改表名:
删除操作:删除指定表、删除指定表并重新创建该表(目的就是保留表结构但清除其中的所有数据)
DML数据操作语言
DML用来对数据库表中的数据进行增删改
增
示例:
改
案例:
删
如果想删除某一个字段的值,使用update将其设置为null即可
DQL数据查询语言
使用的频率最高,这里仅涉及单表查询
分类:
基本查询
as可省略
案例1,查询指定字段,仅返回指定的列:
案列2,查询所有字段,会返回整张表(用*性能不好):
案例3,查询工作地址并起别名,可以观察到workaddress变成了工作地址(as可省略):
案例4,查询不重复的工作地址,会返回不重复的结果:
条件查询
案例:
like '__'对应只要是2个,是什么都行;like '%X',代表前面可以是任意个字符,但最后一个必须是X
聚合函数
案例:
注意,统计员工数量时应使用*而不是idcard,如果idcard为null,则会不参与计算
分组查询
查询其他字段无任何意义怎么理解,比如案例1中,查询的聚合函数为对应性别的人数,而查询的字段为性别,如果此时再查询姓名则无意义
补充一种用法:比如要查询前5个,可以采用分页,查询第一页并且每页5个即可
案例1:
案例2:
案例3:
理解:查询的字段为workaddress与聚合函数(表中年龄小于45的计数),并根据workaddress分组
在上面的基础上,加上having,表示在上面的筛选结果后,再次筛选,筛选出聚合函数>3的
当然,也可以给聚合函数取个名字,如下
排序查询
默认就是asc升序排序,因此可以省略
案例:
分页查询
案例练习
执行顺序
DCL数据控制语言
管理用户
案例:
注意,创建完用户后只能访问系统库,没有其他权限,想要拥有其他权限,需要通过下面的的章节赋予
权限控制
案例:
all代表所有权限