【数据库】MySQL数据库SQL语句汇总

目录

1.SQL 通用语法

2.SQL 分类

2.1.DDL

2.2.DML

2.3.DQL

2.4.DCL

3.DDL

3.1.数据库操作

3.1.1.查询

3.1.2.创建

3.1.3.删除

3.1.4.使用

3.2.表操作

3.2.1.查询

3.2.2.创建

3.2.3.数据类型

3.2.3.1.数值类型

3.2.3.2.字符串类型

3.2.3.3.日期时间类型

3.2.4.修改

3.2.4.1.添加字段

3.2.4.2.修改

3.2.4.3.删除字段

3.2.5.删除

4.DML

4.1.介绍

4.2.添加数据

4.3.修改数据

4.4.删除数据

5.DQL

5.1.基本查询

5.2.条件查询

5.3.聚合函数

5.4.分组查询

5.5.排序查询

5.6.分页查询

5.7.编写顺序与执行顺序

6.DCL

6.1.管理用户

6.2.权限控制


1.SQL 通用语法

MySQL 数据库的 SQL 语句不区分大小写, 关键字建议使用大写

2.SQL 分类

2.1.DDL

数据定义语言, 用来定义数据库对象

2.2.DML

数据操作语言, 用来对数据表中的数据进行增删改

2.3.DQL

数据查询语言, 用来查询数据库中表的记录

2.4.DCL

数据控制语言, 用来创建数据库用户, 控制数据库的访问权限

3.DDL

3.1.数据库操作

3.1.1.查询
  • 查询所有数据库

SHOW DATABASES;
  • 查询当前数据库

SELECT DATABASE();
3.1.2.创建
CREATE DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARSET 字符集] [COLLATE 排序规则];

[中括号里的内容可以省略]

3.1.3.删除
DROP DATABASE [IF EXISTS] 数据库名;
3.1.4.使用
USE 数据库名;

3.2.表操作

3.2.1.查询
  • 查询当前数据库所有表

SHOW TABLES;
  • 查询表结构

DESC 表名
  • 查询指定表的建表语句

SHOW CREATE TABLE 表名;
3.2.2.创建
CREATE TABLE 表名(字段1 字段1类型[COMMENT 字段1注释],字段2 字段2类型[COMMENT 字段2注释],字段3 字段3类型[COMMENT 字段3注释],... ...字段n 字段n类型[COMMENT 字段n注释],
)[COMMENT 表注释];
3.2.3.数据类型

MySQL 支持的数据类型有很多, 主要分为三类: 数值类型 \ 字符串类型 \ 日期时间类型

3.2.3.1.数值类型
  • TINYINT

  • SMALLINT

  • MEDIUMINT

  • INT \ INTEGER

  • BIGINT

  • FLOAT

  • DOUBLE

  • DECIMAL

UNSIGNED 代表使用无符号范围, 如 age TINYINT UNSIGNED

TINYINT 的        有符号范围是 (-128, 127)

                           无符号范围是(0, 255)

3.2.3.2.字符串类型
  • CHAR

  • VARCHAR

  • TINYBLOB

  • BLOB

  • TEXT

  • MEDIUMBLOB

  • MEDIUMTEXT

  • LONGBLOB

  • LONGTEXT

3.2.3.3.日期时间类型
  • DATE YYYY - MM - DD

  • TIME HH - MM - SS

  • YEAR YYYY

  • DATETIME YYYY - MM- DD HH:MM:SS

  • TIMESTAMP YYYY - MM- DD HH:MM:SS

3.2.4.修改
3.2.4.1.添加字段
ALTER TABLE 表名 ADD 字段名 类型(长度) [COMMENT 注释] [约束];
3.2.4.2.修改
  • 修改数据类型

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

ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束];
  • 修改表名

ALTER TABLE 表名 RENAME TO 新表名
3.2.4.3.删除字段
ALTER TABLE 表名 DROP 字段名;
3.2.5.删除
  • 删除表

DROP TABLE [IF EXISTS] 表名;
  • 删除指定表, 并重新创建该表

TRUNCATE TABLE 表名;

4.DML

4.1.介绍

DML 是数据操作语言, 用来对数据库中表的数据记录进行增删改操作

  • 添加数据 INSERT

  • 修改数据 UPDATE

  • 删除数据 DELETE

4.2.添加数据

  • 给指定字段添加数据

INSERT INTO 表名 (字段名1, 字段名2, ...) VALUE (值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, ...);
4.3.修改数据
UPDATE 表名 SET 字段名1 = 值1, 字段名2 = 值2, ...[WHERE 条件];
4.4.删除数据
DELETE FROM 表名 [WHERE 条件];

5.DQL

DQL 是数据查询语言, 用来查询数据库中表的记录

5.1.基本查询

查询多个字段

SELECT 字段1, 字段2, 字段3 ... FROM 表名;
SELECT * FROM 表名;

设置别名

SELECT 字段1 [AS 别名1], 字段2 [AS 别名2] ... FROM 表名;

去除重复记录

SELECT DISTINCT 字段列表 FROM 表名;

5.2.条件查询

WHERE

SELECT 字段列表 FROM 表名 WHERE 条件列表

5.3.聚合函数

count max min avg sum

  • 介绍

将一列数据作为一个整体, 进行纵向计算

  • 常见聚合函数

  • 语法

SELECT 聚合函数(字段列表) FROM 表名;

例如

SELECT count(id) FROM tb_user;

5.4.分组查询

GROUP BY

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

WHERE 与 HAVING 的区别

  • 执行时机不同: WHERE 是分组之前进行过滤, 不满足WHERE 条件不参与分组; 而 HAVING 是分组之后对结果进行过滤

  • 判断条件不同: WHERE 不能对聚合函数进行判断, 而HAVING 可以

5.5.排序查询

ORDER BY

SELECT 字段列表 FROM 表名 ORDER BY 字段1 排序方式1, 字段2 排序方式2;

排序方式

ASC: 升序 (默认值)

DESC: 降序

5.6.分页查询

LIMIT

SELECT 字段列表 FROM 表名 LIMIT 起始索引, 查询记录数;

5.7.编写顺序与执行顺序

  • DQL 语句的编写顺序

SELECT字段列表
FROM表名列表
WHERE条件列表
GROUP BY分组字段列表
HAVING分组后条件列表
ORDER BY排序字段列表
LIMIT分页参数
  • DQL 语句的执行顺序

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

6.DCL

DCL 是数据库控制语言, 主要用于管理数据库用户, 控制数据库的访问权限

6.1.管理用户

  • 查询用户

USE mysql;
SELECT * FROM user;
  • 创建用户

CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
  • 修改用户密码

ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码';
  • 删除用户

DROP USER '用户名'@'主机名';

6.2.权限控制

  • 查询权限

SHOW GRANTS FOR '用户名'@'主机名';
  • 授予权限

GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
  • 撤销权限

REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/67341.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

做跨境电商服务器用什么宽带好?

做跨境电商服务器用什么宽带好?做跨境电商服务器,推荐选择光纤宽带或高性能的5G网络。光纤宽带高速稳定,适合处理大量数据和实时交互;5G网络则提供超高速移动连接,适合需要灵活性和移动性的卖家。具体选择需根据业务规…

光谱相机的光谱分辨率可以达到多少?

多光谱相机 多光谱相机的光谱分辨率相对较低,波段数一般在 10 到 20 个左右,光谱分辨率通常在几十纳米到几百纳米之间,如常见的多光谱相机光谱分辨率为 100nm 左右。 高光谱相机 一般的高光谱相机光谱分辨率可达 2.5nm 到 10nm 左右&#x…

Python毕业设计选题:基于django+vue的智能租房系统的设计与实现

开发语言:Python框架:djangoPython版本:python3.7.7数据库:mysql 5.7数据库工具:Navicat11开发软件:PyCharm 系统展示 租客注册 添加租客界面 租客管理 房屋类型管理 房屋信息管理 系统管理 摘要 本文首…

[Qualcomm]Qualcomm MDM9607 SDK代码下载操作说明

登录Qualcomm CreatePoing Qualcomm CreatePointhttps://createpoint.qti.qua

PE文件:节表-添加节

在所有节的空白区域都不够存放我们想要添加的数据时,这个时候可以通过添加节来扩展我们可操作的空间去存储新的数据(如导入表、代码或资源)。 过程步骤 1.判断是否有足够的空间添加节表 PE文件的节表紧跟在PE头之后,每个节表的…

图论的起点——七桥问题

普瑞格尔河从古堡哥尼斯堡市中心流过,河中有小岛两座,筑有7座古桥,哥尼斯堡人杰地灵,市民普遍爱好数学。1736年,该市一名市民向大数学家Euler提出如下的所谓“七桥问题”: 从家里出发,7座桥每桥…

Fabric区块链网络搭建:保姆级图文详解

目录 前言1、项目环境部署1.1 基础开发环境1.2 网络部署 2、后台环境2.1、环境配置2.2、运行springboot项目 3、PC端3.1、安装依赖3.2、修改区块链网络连接地址3.3、启动项目 前言 亲爱的家人们,创作很不容易,若对您有帮助的话,请点赞收藏加…

02JavaWeb——JavaScript-Vue(项目实战)

一、JavaScript html完成了架子,css做了美化,但是网页是死的,我们需要给他注入灵魂,所以接下来我们需要学习 JavaScript,这门语言会让我们的页面能够和用户进行交互。 1.1 介绍 通过JS/js效果演示提供资料进行效果演…

Windows 蓝牙驱动开发-蓝牙设备栈

蓝牙设备栈 蓝牙驱动程序堆栈包含 Microsoft 为蓝牙协议提供支持的核心部分。 有了这个堆栈,已启用蓝牙的设备可以彼此定位并建立连接。 在此类连接中,设备可以通过各种应用程序交换数据并彼此交互。 下图显示了蓝牙驱动程序堆栈中的模块,以…

GPU 硬件原理架构(一)

这张费米管线架构图能看懂了,整个GPU的架构基本就熟了。市面上有很多GPU厂家,他们产品的架构各不相同,但是核心往往差不多,整明白一了个基本上就可以触类旁通了。下面这张图信息量很大,可以结合博客GPU 英伟达GPU架构回…

CSS布局与响应式

学习链接 Grid网格布局 前端五大主流网页布局 flex布局看这一篇就够了 grid布局看这一篇就够了 用六个案例学会响应式布局 伸缩盒响应式页面布局实战 实现响应式布局的五种方式 - csdn 如何完成响应式布局,有几种方法?看这个就够了 响应式布局总…

大疆最新款无人机发布,可照亮百米之外目标

近日,DJI 大疆发布全新小型智能多光旗舰 DJI Matrice 4 系列,包含 Matrice 4T 和 Matrice 4E 两款机型。DJI Matrice 4E 价格为27888 元起,DJI Matrice 4T价格为38888元起。 图片来源:大疆官网 DJI Matrice 4E DJI Matrice 4T D…

Nmap入门

- 在已有的参数上加上哄骗或是使用文件 nmap -iL data.txt ------- nmap -PS -PA -O -ttl 200 -F -D dcay1, dcay2,dcay3... -vv -P 3306 1.1.1.0/24 -oN data.txtNmap端口的6个状态 open 应用程序正在该端口接收TCP或UDP报文 closed 关闭的端口对于Nmap也是可访问的(它接受…

ubuntu18.04开发环境下samba服务器的搭建

嵌入式linux的发展很快,最近准备在一个新项目上采用新一代的linux核心板,发现linux内核的版本已经更新到5.4以上甚至6.0以上;之前常用的linux内核版本是2.6.4,虽然在某些项目上还能用但是明显跟不上时代的步伐了,所以要…

计算机网络速成

前言:最近在做一些动态的crypto,但是配置总搞不好,正好也有学web的想法,就先学学web再回去做密码,速成视频推荐b站建模老哥 目录 计算机网络概述网络的范围分级电路交换网络(电路交换)报文交换网…

【React】静态组件动态组件

目录 静态组件动态组件创建一个构造函数(类)使用 class 实现组件**使用 function 实现类组件** 静态组件 函数组件是静态组件: 组件第一次渲染完毕后,无法基于内部的某些操作让组件更新「无法实现自更新」;但是,如果调用它的父组…

Qt/C++ 基于 QGraphicsView 的绘图软件 (附源码下载链接)

基于 Qt 的 QGraphicsView 绘图软件项目进行深入讲解,分析其核心代码与功能实现,帮助开发者理解 QGraphicsView 的用法。 项目概览 该项目实现了一个简单的绘图应用,用户可以在界面中创建和编辑矩形、椭圆、直线、多边形和文本等图形对象。功…

Vue2+OpenLayers给2个标点Feature分别添加独立的点击事件(提供Gitee源码)

前言:之前开发都是将所有的点位存放在一个图层上面,并统一赋予它们相同的点击事件,如果其中某些点的点击事件不一样呢,这种问题如何解决呢,本篇博客就是解决这个通点。 目录 一、案例截图 二、安装OpenLayers库 三…

李宏毅机器学习课程笔记03 | 类神经网络优化技巧

文章目录 类神经网络优化技巧局部最小值local minima 与 鞍点saddle pointSaddle Point 的情况更常见 Tips for training:Batch and MomentumSmall Batch vs Large Batch回顾:optimization优化 找到参数使L最小问题:为什么要用Batch&#xff…

如何学习网络安全?有哪些小窍门?

学好网络安全其实没有所谓的捷径,也没有什么小窍门。 入门网络安全首先要有浓厚的学习兴趣,不然很容易就变成了从入门到放弃了。 其次要能静下心,踏踏实实的打好基础。如果你是零基础,建议从Web安全入手,课程难度相对…