基本操作 #
创建数据库
create database name;
删除数据库
DROP DATABASE db;
查看所有数据库
show databases;
查看表结构
desc table_name;
选择数据库
use name;
切换数据库
CONNECT db ;
删除数据表
drop table db_name
truncate table user;
delete from user;
删除表中所有
TRUNCATE TABLE t
查询语句
SELECT
[DISTINCT]*, # "*"表示所有字段,DISTINCT去重
[字段1,]# 查询某个字段
[字段1 + 字段2 AS 型新段,] # 查询运算结果,AS 后面跟别称,可以省略
[聚合函数,] # 使用聚合函数查询
[窗口函数,] # 使用窗口函数
FROM
表1[[INNER / LEFT / RIGHT] JOIN 表2 ON 表连接条件]
WHERE
条件表达式
GROUP BY
[分组字段 / 表达式]
HAVING
条件表达式
ORDER BY
[排序字段 / 表达式] [ASC / DESC] #ASC 表示升序排序(默认) DESC 表示降序排序
LIMIT
起始行数 , 返回的行数
select 列名 from 表名 where 条件;
select * from 表名;
判断是否为空
select colume from table_name where is null
查询并排序
SELECT c1, c2 FROM t
ORDER BY c1 ASC [DESC]
多表查询
SELECT
x.xueh AS '学号',
x.xm AS '姓名',
x.xb AS '性别',
c.cj AS '成绩'
FROM
xsb x
INNER JOIN cjb c ON x.xueh = c.xueh
连接三张表
SELECT
x.xueh,
x.xm,
c.kcbh,
k.kcmc,
c.cj
FROM
xsb x
INNER JOIN cjb c ON x.xueh = c.xueh
INNER JOIN kcb k ON k.kcbh = c.kcbh;
删除语句
update from 表名 where 字段='admin1';
修改语句
update 表名 set 结果字段 ='123' where 条件字段='admin';
插入语句
insert into 表名(字段名 类型);
进阶 #
添加新列
ALTER TABLE t ADD column;
删除一列
ALTER TABLE t DROP COLUMN c ;
添加约束
ALTER TABLE t ADD constraint;
删除约束
ALTER TABLE t DROP constraint;
表名重命名
ALTER TABLE t1 RENAME TO t2;
重命名列名
ALTER TABLE t1 RENAME c1 TO c2 ;
修改数据类型
ALTER TABLE t1 MODIFY c1 datatype;
约束 #
主键
PRIMARY KEY (c1,c2)
外键
FOREIGN KEY (c2) REFERENCES t2(c2)
唯一
UNIQUE(c2,c3)
非空和空
null
not null