sql 语法公式

1. DDL(操作数据库)

        查询

SHOW DATABASES;

        创建数据库

CREATE DATABASE 数据库名称;
CREATE DATABASE IF NOT EXISTS 数据库名称;

        删除数据库

DROP DATABASE 数据库名称;
DROP DATABASE IF EXISTS 数据库名称;

        使用数据库

USE 数据库名称;

        查看当前使用的数据库

SELECT DATABASE();

2. DDL(操作表)

        查询当前数据库下所有表名称

SHOW TABLES;

        查询表结构

DESC 表名称;
show columns from 表名;

        删除表

DROP TABLE 表名;

        删除表时判断表是否存在

DROP TABLE IF EXISTS 表名;

        修改表名

ALTER TABLE 表名 RENAME [AS|TO] 新的表名;

-- 将表名student修改为stu
alter table student rename to stu;

        添加一列

ALTER TABLE 表名 ADD [column] 列名 数据类型 [first|after 列名];

        修改数据类型

ALTER TABLE 表名 MODIFY 列名 新数据类型 [first|after 列名];

        修改列名和数据类型

ALTER TABLE 表名 CHANGE 列名 新列名 新数据类型 [first|after 列名];

        删除列

ALTER TABLE 表名 DROP 列名;

3. DML(操作数据-增删改)

增:

        给指定列添加数据

INSERT INTO 表名(列名1,列名2,…) VALUES(值1,值2,…);

​​​​        给全部列添加数据

INSERT INTO 表名 VALUES(值1,值2,…);

        批量添加数据

INSERT INTO 表名(列名1,列名2,…) VALUES(值1,值2,…),(值1,值2,…),(值1,值2,…)…;

INSERT INTO 表名 VALUES(值1,值2,…),(值1,值2,…),(值1,值2,…)…;

删:

        删除数据语法

DELETE FROM 表名 [WHERE 条件] ;
-- 注意:如果不加条件, 所有数据都被删除了 很严重

改:

        修改表数据

UPDATE 表名 SET 列名1=值1,列名2=值2,… [WHERE 条件] ;

DQL(操作数据-查)

        查询多个字段

SELECT 字段列表 FROM 表名;
SELECT * FROM 表名; -- 查询所有数据

        去除重复记录

SELECT DISTINCT 字段列表 FROM 表名;

        条件查询

SELECT 字段列表 FROM 表名 WHERE 条件列表;
-- 语句中 &&  和  and  都表示并且的意思。建议使用 and 。
-- 可以使用  between ... and 来实现范围查询。
-- null值的比较不能使用 =  或者 != 。需要使用 is  或者 is not

        模糊查询

SELECT 字段列表 FROM 表名 WHERE 字段  LIKE  '%指定包含字段%';
-- _ : 代表单个任意字符
-- % : 代表任意个数字符

        排序查询

SELECT 字段列表 FROM 表名 ORDER BY 排序字段名1 [排序方式1],排序字段名2 [排序方式2] …;
-- ASC : 升序排列 (默认值)
-- DESC : 降序排列

        聚合函数

SELECT 聚合函数名(列名) FROM 表;
--  count(列名)	统计数量(一般选用不为null的列)
--  max(列名)  	最大值               
--  min(列名)  	最小值               
--  sum(列名)  	求和                
--  avg(列名)  	平均值               

        分组查询

SELECT 字段列表 FROM 表名 [WHERE 分组前条件限定] 
        GROUP BY 分组字段名 [HAVING 分组后条件过滤];

        分页查询

SELECT 字段列表 FROM 表名 LIMIT  起始索引 , 查询条目数;
-- 起始索引计算公式
-- 起始索引 = (当前页码 - 1) * 每页显示的条数

        多表查询(内连接查询

-- 隐式内连接
SELECT 字段列表 FROM 表1,表2… WHERE 条件;

-- 显示内连接
SELECT 字段列表 FROM 表1 [INNER] JOIN 表2 ON 条件;

        多表查询(外连接查询

-- 左外连接
SELECT 字段列表 FROM 表1 LEFT [OUTER] JOIN 表2 ON 条件;

-- 右外连接
SELECT 字段列表 FROM 表1 RIGHT [OUTER] JOIN 表2 ON 条件;

        多表查询(子查询

-- 子查询语句的编写位置(子查询就是查询嵌套查询)
select * from 表1 , (sql语句) where 条件
select * from 表1 join (sql语句) on 条件
select * from 表1 where id = (sql语句)
select * from 表1 where id in (sql语句)

注释:

        如有不足之处,欢迎评论区补充学习交流。

你可能感兴趣的:(实用模块,sql,mysql,数据库)