一、创建、删除、查询、使用数据库
·创建 CREATE
CREATE DATABASE 数据库名;
·删除 DROP
DROP DATABASE 数据库名;
·查询 SHOW
SHOW DATABASES;
·使用 USE
USE 数据库名;
二、 创建、删除、修改表
·创建 CREATE
CREATE TABLE 表名
(属性1 INT PRIMARY KEY AUTO_INCREMENT,
属性2 VARCHAR(20) NOT NULL 默认值,
属性3 FLOAT UNIQUE ,
CONSTRAINT 约束名 约束类型(约束字段);
·删除 DROP
DROP TABLE IF EXISTS 表名;
·修改 ALTER
【修改表名】ALTER TABLE 表名 RENAME 新表名
【修改字段类型】ALTER TABLE 表名 MODIFY 字段名 数据类型
【修改字段名称】ALTER TABLE 表名 CHANGE 旧字段名 新字段名 数据类型
【添加字段】ALTER TABLE 表名 ADD 新字段名 字段类型 [完整性约束] [FIRST | AFTER 字段名]
【删除字段】ALTER TABLE 表名 DROP 字段名
【修改字段位置】ALTER TABLE 表名 MODIFY 字段1 数据类型 FIRST | AFTER 字段2
【删除表的外键约束】ALTER TABLE 表名 DROP FOREIGN KEY 外键约束名
·修改表的存储引擎
ALTER TABLE 表名 ENGINE = 存储引擎名
·查询表结构
DESC 表名;
SHOW CREATE TABLE 表名 \G
3、数据的插入、删除、修改
·插入 INSERT
INSERT INTO 表名(属性1,........) VALUES(值1,值2,值3,值4,值5)
·修改 UPDATE
UPDATE 表名 SET 属性1 = 值1,......... WHERE 条件
·删除 DELETE
DELETE FROM 表名 WHERE 条件
4、数据的查询
SELECT DISTINCT 字段1,字段2,......
FROM 表名
WHERE 条件
GROUP BY 分组字段 HAVING 条件(过滤分组中不满足该条件的内容)
ORDER BY 排序字段 DESC、ASC
LIMIT 开始位置(0开始),需显示的行数
查询中的关键字:
· IN | NOT IN
· BETWEEN 值1 AND 值2
· LIKE ‘ ’ (通配符 _ %)
· IS NULL
· AND | OR
查询中的函数:
· COUNT(*) 计算表中总行数,不忽略空值行 COUNT(字段名)计算该列下的总行数,忽略空值行
· AVERAGE(列名) 均值
· SUM(列名) 求解该列下的值和
· MAX() MIN()
查询中的连接:
· 内连接
SELECT 字段1,.........
FROM 表1 INNER JOIN 表2
ON 条件
SELECT 字段1,.........
FROM 表1 , 表2
WHERE 条件
· 外链接
SELECT 字段1,.........
FROM 表1 LEFT OUTER JOIN 表2
ON 条件
SELECT 字段1,.........
FROM 表1 RIGHT OUTER JOIN 表2
ON 条件
· 合并查询结果【UNION 删除重复结果 UNION ALL 包含重复结果】
SELECT 字段1,.........
FROM 表1 , 表2
WHERE 条件
UNION [ALL]SELECT 字段1,.........
FROM 表1 , 表2
WHERE 条件
·其他查询
· 带子查询中的关键字
· ANY SOME(子查询)【满足其中任何一个即可】
· ALL(子查询)【满处所有】
· EXISTS(子查询)【若子查询返回结果至少1行 则返回TRUE 否则返回FALSE】 【与条件表达式联用】
· IN(子查询)
· 比较运算符(< > >= <= !=)
· 正则表达式查询
SELECT 字段1,.........
FROM 表1 , 表2
WHERE 字段 REGEXP ' 正则表达式 '