MySql自用笔记

本文介绍了SQL的基本语法,包括数据库和表的操作(DDL)、数据的增删改查(DML)、查询语言(DQL)以及数据控制语言(DCL)。重点讲解了如何创建、修改和删除数据库及表,以及插入、更新和删除数据的方法,并提供了多个示例。
摘要由CSDN通过智能技术生成

SQL通用语法

1.SQL语句可以单行多行书写,以;结尾。
2.SQL语句可以使用空格缩进增强可读性。
3.不区分大小写,关键字建议大写。
4.注释:

  • 单行注释:–注释内容或# 注释内容(MySQL特有)
  • 多行注释: /* 注释内容 * /

SQL分类

在这里插入图片描述

2.1DDL

DDL-数据库操作

  • 查询
    SHOW DATABASSES; 查询所有数据库
    SELECT DATABASE(); 查询当前数据库
  • 创建
    CREATE DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARSET 字符集] [COLLATE 排序规则];
  • 删除
    DROP DATABASE[IF EXISTS]
  • 使用
    USE 数据库名

DDL-表操作

  • 查询当前数据库所有表 SHOW TABLES;

  • 查询表结构 DESC 表名;

  • 查询指定表的建表语句 SHOW CREATE TABLE 表名;

  • 创建
    CREATE TABLE 表名( 字段1 字段1类型[ COMMENT 字段1注释 ],
    字段2 字段2类型[ COMMENT 字段2注释 ], 字段3 字段3类型[ COMMENT 字段3注释 ],
    .... `字段n 字段n类型[ COMMENT 字段n注释 ] )[ COMMENT 表注释];

  • 修改
    添加字段
    ALTER TABLE 表名 ADD 字段名 类型(长度) [COMMENT 注释 ] [约束];
    案例:为emp表添加昵称
    在这里插入图片描述

修改数据类型
ALTER TABLE 表名 MODIFY 字段名 新数据类型(长度);

修改字段名和字段类型
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束];
在这里插入图片描述

删除字段
ALTER TABLE 表名 DROP 字段名;

删除表
DROP TABLE[IF EXISTS ] 表名;

删除指定表并重新创建表
TRUNCATE TABLE 表名;

2.2DML

DML-添加数据

给指定字段添加数据
INSERT INTO 表名(字段1,字段2,…) VALUES(值1,值2,…);

insert into emp(id, workno, name, gender, age, idcard, entrydate) VALUES (1,'1','itcast','男',22,'123456789012345678','2000-01-01')

给全部字段添加数据
INSERT INTO 表名 VALUES(值1,值2,…);

insert into emp values (2,'2','养鸡名','男',23,'120111200009086023','2018-09-01');

给全部字段添加多条数据
INSERT INTO 表名 VALUES (值1,值2,…);

insert into emp values (3,'3','周晓玲','女',23,'120111200009154231','2018-09-01'),(4,'4','张海洋','男',23,'220111200006154231','2018-09-01');

注意:

  • 插入数据时,指定字段顺序与值的顺序对应。
  • 字符串和日期型数据应该包含在引号中。
  • 插入的数据大小,应该在字段的规定范围内。

DML-修改数据

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

update emp set name = '小高',gender = '女' where id = 1;

DML-删除数据

DELETE FROM 表名 [WHERE 条件];

DELETE FROM emp where gender = '女';

注意:

  • DELETE语句的条件如果没有,将会删除整张表的所有数据。
  • DELETE不能删除某一个字段的值(可以使用UPDATE)。

2.3 DQL

DQL-语法

在这里插入图片描述

DQL-基本查询

在这里插入图片描述

DQL-条件查询

在这里插入图片描述

DQL-聚合函数

在这里插入图片描述

作用于表中的某一列数据
在这里插入图片描述

DQL-分组查询

在这里插入图片描述

DQL-排序查询

在这里插入图片描述

asc可以省略,因为默认排序是升序。

DQL-分页查询

在这里插入图片描述

DQL-案例练习

在这里插入图片描述

参考答案:
1.select * from emp where age in(20,21,22,23);
2.select * from emp where gender = '男' and (age between 20 and 40) and name like '___';
3.select gender,count(*) from emp where age < 60 group by gender;
4.select name,age from emp where age<= 35 order by age asc,entrydate desc ;
5.select * from emp where gender = '男' and (age between 20 and 40) order by age , entrydate limit 5;

DQL-执行顺序

在这里插入图片描述

2.4 DQL

介绍:DCL(Data Control Language)数据控制语言,用来管理数据库用户、控制数据库的访问权限。

DCL-管理用户

在这里插入图片描述
一般的mysql使用者很少能接触到DCL,大致了解即可。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值