sql语句 [数据库教程]
mySQL
- mySQL
- 数据库操作
- 创建数据库
- 修改数据库
- 查看数据库的字符集和校验规则
- 删除数据库
- 查看所有数据库
- 查看正在使用的数据库
- 切换数据库
- 数据库表操作
- 创建数据表
- 数据类型
- 单表约束分类
- 查看所有表
- 查看表结构信息
- 删除表
- 修改表
- 修改表:添加列
- 修改表:修改列类型,长度和约束
- 修改表:删除列
- 修改表:修改列名称
- 修改表:修改表的字符集
- 修改表:修改表名
- 创建数据表
- 数据库表记录操作
- 添加表记录
- 插入所有列
- 插入某些列
- 修改表记录
- 修改某列所有值
- 按条件修改数据
- 删除表记录
- 查询表记录
- 基本查询
- 查询所有
- 按列查询
- 条件查询
- 多条件查询
- 范围查询
- 模糊查询
- 统计查询
- 使用运算符
- 使用聚合函数
- 不重复查询
- 别名查询
- 排序查询
- 升序查询
- 倒序查询
- 多重排序查询
- 分组查询
- 基本分组查询
- 分组查询并在where子句中使用聚合函数
- 添加表记录
- 数据库操作
数据库操作
创建数据库
create database 数据库名 [character set 字符集 collate 校对规则];
修改数据库
alter database 数据库名称 [character set 字符集 collate 校对规则];
查看数据库的字符集和校验规则
show create database 数据库名;
删除数据库
drop database 数据库名;
查看所有数据库
show databases;
查看正在使用的数据库
select database();
切换数据库
use 数据库名;
数据库表操作
创建数据表
create table 表名称( 字段名称 字段类型(长度) 约束,
字段名称 字段类型(长度) 约束…
);
数据类型
- tinyint/smallint/int/bigint
- float/double
- bit
- char/varchar
- date/time/datetime/timestamp
单表约束分类
- 主键约束:primary key 主键约束默认就是唯一 非空的
- 唯一约束:unique
- 非空约束:not null
查看所有表
show tables;
查看表结构信息
desc 表名;
删除表
drop table 表名
修改表
修改表:添加列
alter table 表名 add 列名 类型(长度) 约束;
修改表:修改列类型,长度和约束
alter table 表名 modify 列名 类型(长度) 约束;
修改表:删除列
alter table 表名 drop 列名;
修改表:修改列名称
alter table 表名 change 旧列名 新列名 类型(长度) 约束;
修改表:修改表的字符集
alter table 表名 character set 字符集;
修改表:修改表名
rename table 表名 to 新的表名;
数据库表记录操作
各关键字使用顺序:
S(select)… F(from)…W(where)…G(group by)…H(having)…O(order by);
添加表记录
插入所有列
insert into 表名 values (值1,值2,值3…);
插入某些列
insert into 表名 (列名1,列名2,列名3…) values (值1,值2,值3…);
修改表记录
修改某列所有值
update 表名 set 列名=值,列名=值 [where 条件];
按条件修改数据
update 表名 set 列名=值,列名=值 where 列名=值;
删除表记录
delete from 表名 [where 条件];
查询表记录
基本查询
select [distinct] *|列名 from 表 [条件];
查询所有
select * from 表;
按列查询
select 列名[, 列名...] from 表;
条件查询
select *|列名 from 表 where 列名 比较符[> , < , >= , <= , <> ,=] 值;
多条件查询
select *|列名 from 表 where 条件 逻辑符[and , or ,not] 条件...;
范围查询
select *|列名 from 表 where 列名 in (值,值,...);
模糊查询
select *|列名 from 表 where 列名 like ‘表达式‘;
表达式中可以使用_或者%作为占位符。
_只能代表一个字符,而%可以代表任意个字符。
- like ‘李_’=:名字中必须是两个字,而且是姓李的。
- like ‘李%’=:名字中姓李的学生,李子后可以是1个或任意个字符。
- like ‘%四’=:名字中以四结尾的。
- like ‘%王%’=:只要名称中包含这个字就可以。
统计查询
使用运算符
select 列名 运算符[+,-] 列名 [运算符 列名...] from 表;
使用聚合函数
select 聚合函数(参数...) from 表;
聚合函数 作用
sum()
求和
count()
求个数
max()
求最大值
min()
求最小值
avg()
求平均值
不重复查询
select distinct *|列名 from 表;
别名查询
select 列名 as 别名[, 列名 as 别名...] from 表 ;
排序查询
升序查询
select * from 表 order by 列名 [asc];
倒序查询
select * from 表 order by 列名 dasc;
多重排序查询
select * from 表 order by 列名 排序方式, 列名 排序方式;
分组查询
基本分组查询
select * from 表 group by 列名;
分组查询并在where子句中使用聚合函数
select * from 表 group by 列名 having 含聚合函数的条件;
以上是 sql语句 [数据库教程] 的全部内容, 来源链接: utcz.com/z/535363.html