SQL语句

SQL复习:

1:mysql登录

 mysql -uroot -p
Enter Password:密码+回车

2:查看所有数据库

show databases;

3:创建数据库

create database 库名 charset utf8;

4:切换数据库

use 库名;

5:查看所有表

show tables;

6:创建表

create table 表名 

字段名1 字段类型 字段完整性约束,
字段名2 字段类型 字段完整性约束,
字段名3 字段类型 字段完整性约束,
......
);
 
- 字段类型:
- 整型: int, bigint
- 字符串: varchar(32), char(8) text
- 日期时间
- 枚举
- 集合

- 字段完整性约束
- 唯一约束:   unique
- 默认值约束:  default
- 非空约束:  not null
- 主键约束:  primary key
- 外键约束:  foreign key

7:查看表是否创建成功及表结构是否符合要求

# 查看表
show tables;
?
# 表结构
desc 表名;

8:插入数据

# 1.全数据字段插入一条数据
insert into 表名 values (v1,v2,v3,.....);
?
# 2.全字段插入多条
insert into 表名 values
(v1,v2,v3,.....),
(v1,v2,v3,.....),
...;
?
# 3.部分字段插入
insert into 表名
(字段1,字段2,字段3,....)
values
(v1,v2,v3,....),
(v1,v2,v3,....),
....;

9:修改数据

update 表名 set 字段名=字段值 where 条件;

10:删除语句

delete from 表名 where 条件;

11:查询数据 *

(从哪里分组选择,去重有排序限制)
from
where
group by
select
distinct
having
order by
limit
# 1.简单查询
- 语句语法:
select 字段名1,字段名2,字段名3,... from 表名 where 条件;
- 逻辑运算:
and  # 连接多个条件,要求查询出来的数据要满足每一个条件
or  # 连接多个条件,只要满足or连接的任意一个条件就查询出来
not  # 非
- 比较运算
select * from stu where age>20;
select * from stu where age<18;
select * from stu where age>20 or age<18;
大于: >
小于: <
大于等于: >=
小于等于: <=
不等于: !=
-------------------------------------------------------
# 分组
1).分组统计个数:
select gender, count(*) as ‘数量‘ from stu group by gender;
2) .分组显示
select gender, group_concat(name) as name from stu group by gender;

# 过滤:having
select gender, group_concat(name) as name, count(*) as total from stu
group by gender
having total >2;

# 分页
select * from stu limit start, offset;
select * from stu limit 8.3;
# start: 是起始位置,offset是偏移量

# 去重
select distinct depart from stu;

# 排序
select * from stu order by age desc;
----------------------------------------------------
# 聚合函数
max(): 最大值
min(): 最小值
sum(): 求和
count(): 计数
avg(): 平均值
----------------------------------------------------
# 模糊查询
1) 通配符
select * from stu where name like ‘l%‘;
2) 正则
select * from stu where name regexp ‘正则表达式‘

 

 

SQL语句

上一篇:C语言的inline


下一篇:要点Java13 继承Inheritance