mysql语法

MySQL

SQL分类:

	DDL: 操作数据库、表

	DML:数据的增、删、改  

	DQL:数据的查询

	DCL :数据库用户、权限

====================================================================

DDL(操作数据库、表)

数据库:

	创建数据库 :create database [ if not exists ] 数据库名;

	查询数据库 :show databases; 

	切换数据库 :use 数据库名 ;

	删除数据库 :drop database [ if exists ] 数据库名 ;

表结构:

创建表:
create table  表名(
	字段1  字段1类型 [约束]  [comment  字段1注释 ],
	字段2  字段2类型 [约束]  [comment  字段2注释 ],
	字段3  字段3类型 [约束]  [comment  字段3注释 ],
	......
	字段n  字段n类型 [约束]  [comment  字段n注释 ] 
) [ comment  表注释 ] ;
  数据类型:

  		数字类型: tinyint   , int  ,  bigint

  		字符串类型: char  , varchar 

  		日期时间类型: date  , datetime

  约束:

  		主键:primary  key ------------> auto_increment

  		非空: NOT NULL

  		唯一: UNIQUE

  		默认: DEFAULT

创建表流程

  1. 阅读页面原型及需求文档

  2. 确定原型中的表结构所包含的字段,以及字段的类型、长度限制

  3. 再增加一张表所需要的业务基础字段

在这里插入图片描述

======================================================================

DML(数据的增、删、改 )

增加(insert)

1). 给指定字段添加数据

insert into 表名 (字段名1, 字段名2, …) values (值1, 值2, …);

2). 给全部字段添加数据

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

3). 批量添加数据

insert into 表名 (字段名1, 字段名2, …) values (值1, 值2, …), (值1, 值2, …), (值1, 值2, …) ;
insert into 表名 values (值1, 值2, …), (值1, 值2, …), (值1, 值2, …) ;

修改(update)

语法:

update 表名 set 字段名1 = 值1 , 字段名2 = 值2 , … [ where 条件 ] ;

删除(delete)

语法:

delete from 表名 [ where 条件 ] ;

==============================================================

DQL(数据查询语言)

介绍:数据查询语言 。用来查询数据库中表的记录

语法:(完整格式)

SELECT
字段列表
FROM
表名列表
WHERE
条件列表
GROUP BY
分组字段列表
HAVING
分组后条件列表
ORDER BY
排序字段列表
LIMIT
分页参数

执行顺序:

  1. 处理 FROM 子句,确定要查询的数据表。

  2. 处理 WHERE 子句,确定筛选条件。只有符合条件的记录会被查询。

  3. 处理 GROUP BY 子句,按照指定的分组字段对数据进行分组。

  4. 处理 HAVING 子句,筛选分组后符合条件的记录。

  5. 处理 SELECT 子句,选择需要查询的字段。

  6. 处理 ORDER BY 子句,按照指定的排序字段对结果进行排序。

  7. 处理 LIMIT 子句,分页返回结果集。

最终返回符合条件的数据,按照指定的顺序进行排序并分页返回。

1.基本查询

1). 查询多个字段

select 字段1, 字段2, 字段3 … from 表名 ;
select * from 表名 ;

2). 字段设置别名

select 字段1 [ as 别名1 ] , 字段2 [ as 别名2 ] … from 表名;
select 字段1 [ 别名1 ] , 字段2 [ 别名2 ] … from 表名;

3). 去除重复记录

select distinct 字段列表 from 表名;

2.条件查询(where)

select 字段列表 from 表名 where 条件列表 ;

在这里插入图片描述

3.排序查询(order by)

select 字段列表 from 表名 order by 字段1 排序方式1 , 字段2 排序方式2 ;

  • 排序方式
    • ASC 升序(默认)
    • DESC 降序
  • 多字段排序
    • order by 字段1 asc , 字段2 desc ;

4. 分页查询(limit)

select 字段列表 from 表名 limit 起始索引, 查询记录数 ;

  • 参数 :起始索引 , 每页记录数
  • 公式 :起始索引 = (页码-1)* 每页记录数

5.聚合函数

在这里插入图片描述

6. 分组查询(group by)

1.语法:

select 字段列表 from 表名 [ where 条件 ] group by 分组字段名 [ having 分组后过滤条件 ];

  1. where与having区别
    ● 执行时机不同:where是分组之前进行过滤,不满足where条件,不参与分组;而having是分组之后对结果进行过滤。
    ● 判断条件不同:where不能对聚合函数进行判断,而having可以。

在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

C.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值