数据库常用的sql语句大全--sql

article/2025/9/29 13:40:22

前言

本片博客使用mysql数据库进行数据操作,使用Navicat for mysql 这个IDE进行可视化操作。每个SQL语句都是亲身实验验证的,并且经过自己的思考的。能够保证sql语句的可运行性。
sql语句的命令不区分大小写,但储存的数据是区分大小写的。在这里我们统一使用英文小写进行命令编辑。如果喜欢大写的可以使用IDE编辑器的一键美化功能,可以统一转化为大写。并且会对你的sql语句进行美化,例如自动换行等。
[图片上传失败...(image-44360e-1648885124336)]

创建删除(数据库、表)


  • 创建数据库

create database <数据库名>;

-- 创建名为dbtest数据库
create database dbtest;
use dbtest;

  • 创建表
    create table 表名(字段);
    • comment 是注释的意思
    • primary key(stu_id) 把stu_id设置为主键,主键的设置可以细分为三种方式,后面再写
    • ENGINE=InnoDB 把储存引擎设置为InnoDB
    • charset=utf8mb4 编码格式设置utf8mb4,utf8mb4是超集合,完全兼容utf8,不需要做特殊转换
-- 创建表
create table `t_student`(
`stu_id` char(12) not null COMMENT '学生id',
`stu_name` varchar(12) not null comment '学生姓名',
`stu_sex` tinyint(2) unsigned default null comment '性别:0(男),1(女)',
`stu_age` tinyint(3) unsigned DEFAULT NULL COMMENT '年龄',
PRIMARY KEY (`stu_id`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生基本信息表';

mysql中的数据类型

类型包含
数值类型整数类型(TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT)、浮点数类型(float、double)、定点数类型(decimal)
日期/时间类型YEAR、TIME、DATE、DATETIME、TIMESTAMP
字符串类型CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM 和 SET 等
二进制类型BIT、BINARY、VARBINARY、TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB

增加

插入数据

插入已知行(少数行数据
  • 使用insert values 插入数据
-- 插入数据 insert  values
insert into `t_student` 
(`stu_id`,`stu_name`,`stu_sex`,`stu_age`)
values(1,"hjk","0",18);
  • 使用 insert set 插入数据
-- insert set
insert into `t_student`
set `stu_id`=3,`stu_name`='hjk',`stu_sex`=1,`stu_age`=18
  • 从另一个表查询的数据插入新表 insert from,这个查询出来的数据要与插入到表里的字段有对应关系,例如查寻出来的数据如果有字段"stu_address"你如果直接插入就会不成功!
insert into `t_student` select `stu_id`,`stu_name`,`stu_sex`,`stu_age` from `t_student01`;
插入很多行数据(10万条)

使用存储过程插入数据,在我们做实验时可能需要很多数据进行操作,但是一条一条手动加时不太容易实现的,我们可以使用其他方法插入数据(例如:连接jdbc,进行操作),但是这个插入的是几乎相同的数据,在这里我们使用存储过程并通过调用存储过程实现插入大量数据!

  • 创建存储过程
    • delimiter ## 定义结束符号,##是你自定义的符号可以是其他的符号(如:$、%、&),在最后end不要忘了写。
    • 其实中间就是一个while循环,变量为i。
    • 可以在定义的时候输入参数,这个我没有定义。

-- 插入大量数据,使用存储过程
delimiter ##
create procedure insert_pro()
begin
declare i int default 4;
while i <=100000 do
insert into `t_student` values(i,'hjk','0','20');
set i = i+1;
end while;
end ##
  • 使用存储过程,创建存储过程后并没有效果,只有使用后才有效果

-- 使用存储过程
call 

http://chatgpt.dhexx.cn/article/Eo1BC4Nc.shtml

相关文章

SQL常用语句大全

我们在进行开发工作时&#xff0c;对数据库的操作是必不可少的&#xff0c;熟练掌握SQL语句可以让我们对数据库的数据处理变得非常简单&#xff0c;所以学习SQL语句是非常有必要的&#xff0c;下面汇总了一些常用的SQL语句 SQL语句的类型 DDL(Data Definition Language)数据定…

EXPLAIN 命令详解

在工作中&#xff0c;我们用于捕捉性能问题最常用的就是打开慢查询&#xff0c;定位执行效率差的SQL&#xff0c;那么当我们定位到一个SQL以后还不算完事&#xff0c;我们还需要知道该SQL的执行计划&#xff0c;比如是全表扫描&#xff0c;还是索引扫描&#xff0c;这些都需要通…

explain用法和结果的含义

explain select * from user explain extended select * from user idSELECT识别符。这是SELECT的查询序列号select_type SELECT类型,可以为以下任何一种: SIMPLE:简单SELECT(不使用UNION或子查询)PRIMARY:最外面的SELECTUNION:UNION中的第二个或后面的SELECT语句DEPENDENT UN…

SQL优化-explain的用法(实例解析)

前面写了两篇博客&#xff0c;关于单表和多表的优化&#xff0c;这两篇博客的基础其实就是explain&#xff0c;explain是必须掌握的知识点&#xff0c;我曾尝试过死记硬背&#xff0c;但效果甚微&#xff0c;还是实践来的实在。耗费一周左右时间&#xff0c;每晚花两小时&#…

MySQL中EXPLAIN详解

EXPLAIN作为MySQL的性能分析神器&#xff0c;读懂其结果是很有必要的&#xff0c;然而我在各种搜索引擎上竟然找不到特别完整的解读。都是只有重点&#xff0c;没有细节&#xff08;例如type的取值不全、Extra缺乏完整的介绍等&#xff09;。 mysql网站 文章目录 EXPLAIN使用用…

MySql的Explain用法

MySql的Explain用法 explain执行计划 explain执行计划 使用EXPLAIN关键字可以模拟优化器执行SQL查询语句&#xff0c;从而知道MySQL是如何处理你的SQL语句的。分析你的查询语句或是表结构的性能瓶颈。 ➤ 通过EXPLAIN&#xff0c;我们可以分析出以下结果&#xff1a; 表的读…

MySQL Explain用法及各字段详解

Explain工具介绍 使用 Explain 关键字可以模拟 MySQL 优化器执行 SQL 查询语句&#xff0c;并分析出查询语句的相关执行过程。 使用方法是直接在 select 语句前&#xff0c;加上关键字 explain&#xff0c;然后执行&#xff0c;就能获取一些优化器执行该 SQL 的信息。使用方法…

MySql中explain的用法

explain命令展示MySQL如何使用索引来处理select语句以及连接表。可以帮助选择更好的索引和写出更优化的查询语句。 explain命令使用 只需要在select前面加上EXPLAIN即可&#xff0c;如&#xff1a; explain select * from table_name where col_name XX注&#xff1a;expla…

MySQL中的Explain用法

一、Explain介绍   使用EXPLAIN关键字可以模拟优化器执行SQL查询语句&#xff0c;从而就可以知道MySQL是如何处理你的SQL语句的&#xff0c;可以用来分析你的查询语句或者是表结构的性能瓶颈。   通过EXPLAIN我们可以分析出以下结果&#xff1a;     ●表的读取顺序  …

mysql中explain用法和结果的含义

explain select * from user explain extended select * from user id SELECT识别符。这是SELECT的查询序列号 select_type SELECT类型,可以为以下任何一种: SIMPLE:简单SELECT(不使用UNION或子查询) PRIMARY:最外面的SELECT UNION:UNION中的第二个或后面的SELECT语句 DEPEND…

EXPLAIN用法解析

1. EXPLAIN简介 使用EXPLAIN关键字可以模拟优化器执行SQL查询语句&#xff0c;从而知道MySQL是如何处理你的SQL语句的。分析你的查询语句或是表结构的性能瓶颈。 ➤ 通过EXPLAIN&#xff0c;我们可以分析出以下结果&#xff1a; 表的读取顺序 数据读取操作的操作类型 哪些索引…

MySQL中Explain用法详解

Explain简介 我们在写后端程序的时候&#xff0c;通常会写sql来查询数据&#xff0c;如果是单表查询的时候&#xff0c;那直接select就完事了&#xff0c;但是如果是连表查询数据量也不小的话&#xff0c;就造成了查询速度会比较慢&#xff0c;那么我们该怎么知道我的sql的实际…

【MySQL】explain 用法详解

【MySQL】explain 用法详解 explain命令主要来查看SQL语句的执行计划&#xff0c;查看该SQL语句有没有使用索引&#xff0c;有没有做全表扫描等。它可以模拟优化器执行SQL查询语句&#xff0c;从而知道MySQL是如何处理用户的SQL语句。 文章目录 【MySQL】explain 用法详解一、e…

Explain详解

目录 一、表信息 二、explain 的两种使用方式 三、explain中的列 1. id列 2. select_type列 3. table列 4. type列 5. possible_keys列 6. key列 7. key_len列 8. ref列 9. rows列 10. Extra列 四、索引最佳实践 使用EXPLAIN关键字可以模拟优化器执行SQL语句&…

mysql 用法 Explain

前言&#xff1a;explain&#xff08;执行计划&#xff09;&#xff0c;使用explain关键字可以模拟优化器执行sql查询语句&#xff0c;从而知道MySQL是如何处理sql语句。explain主要用于分析查询语句或表结构的性能瓶颈。 注&#xff1a;本系列随笔如无特殊说明都MySQL版本都为…

Mysql中explain的用法详解

&#x1f353; 简介&#xff1a;java系列技术分享(&#x1f449;持续更新中…&#x1f525;) &#x1f353; 初衷:一起学习、一起进步、坚持不懈 &#x1f353; 如果文章内容有误与您的想法不一致,欢迎大家在评论区指正&#x1f64f; &#x1f353; 希望这篇文章对你有所帮助,欢…

explain用法和结果分析

1. EXPLAIN简介 使用EXPLAIN关键字可以模拟优化器执行SQL查询语句&#xff0c;从而知道MySQL是如何处理你的SQL语句的。分析你的查询语句或是表结构的性能瓶颈。 通过explain我们可以获得以下信息&#xff1a; 表的读取顺序数据读取操作的操作类型哪些索引可以使用哪些索引被实…

Explain使用详解

在日常开发工作中&#xff0c;对于SQL的书写&#xff0c;通常都会尽量让SQL能够使用到表中创建的索引&#xff0c;以此来提高SQL语句的性能。想要参看一个SQL是否会使用索引&#xff0c;可以使用MySQL字段的分析工具Explain&#xff0c;这篇文章重要介绍该工具的使用。 一、 简…

EXPLAIN 的用法

用法简介 EXPLAIN 的用法很简单&#xff0c;只需要在你的 SQL 前面加上 EXPLAIN 即可。例如&#xff1a; explain select * from t; PS&#xff1a;insert、update、delete 同样可以通过 explain 查看执行计划&#xff0c;不过通常我们更关心 select 的执行情况 你会看到如下…

[MySQL高级](一) EXPLAIN用法和结果分析

1. EXPLAIN简介 使用EXPLAIN关键字可以模拟优化器执行SQL查询语句&#xff0c;从而知道MySQL是如何处理你的SQL语句的。分析你的查询语句或是表结构的性能瓶颈。 ➤ 通过EXPLAIN&#xff0c;我们可以分析出以下结果&#xff1a; 表的读取顺序数据读取操作的操作类型哪些索引可…