MySQL秘籍:让你的表操作炉火纯青

这篇具有很好参考价值的文章主要介绍了MySQL秘籍:让你的表操作炉火纯青。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

💕每个人都有自己的一生,不要和别人去比较。比较只会让你感到沮丧和不满足。关注自己的成长和进步,并享受属于自己的旅程。 💕
🐼作者:不能再留遗憾了🐼
🎆专栏:MySQL学习🎆
🚗本文章主要内容:学习MySQL的对表操作。查看表、创建表、删除表,对表进行增删改查🚗
MySQL秘籍:让你的表操作炉火纯青

前言

前面我们已经基本了解了什么是MySQL、MySQL的发展以及MySQL的对库操作初识MySQL,那么今天我为大家分享的是MySQL中重要的对表操作。

显示数据库里的所有表

在进行表操作的之前,首先需要建立在库的基础上,因为我们的表是包含在库中的,所以我们需要先创建一个库,然后选中该库,表明对该库进行操作。

MySQL秘籍:让你的表操作炉火纯青

当选中库之后,使用 show tables 来显示表。

MySQL秘籍:让你的表操作炉火纯青

因为这里我们并没有创建表,所以显示的为空

创建表

使用 create table 表名 (列名,类型); 创建表。

要想创建表就需要知道MySQL的通用数据类型有哪些。
MySQL秘籍:让你的表操作炉火纯青

不同数据库的基本数据类型
MySQL秘籍:让你的表操作炉火纯青

然后我们选择合适的数据类型来创建表。
MySQL秘籍:让你的表操作炉火纯青

查看指定表结构

使用 desc 表名; 查看指定表的表结构。

MySQL秘籍:让你的表操作炉火纯青
MySQL秘籍:让你的表操作炉火纯青

删除表

使用 drop table 表名 删除表。
MySQL秘籍:让你的表操作炉火纯青

注意这里删除表操作跟删除库操作一样,要十分小心,否则可能会出现很严重的问题。

注释

MySQL跟其他编程语言都一样,都可以对源码进行注释。MySQL进行注释的方法有三种:
1.使用 comment 关键字进行注释
2.使用 “–空格+描述”来表示注释说明 来进行注释,- -
3.使用 # 进行注释

MySQL秘籍:让你的表操作炉火纯青
MySQL秘籍:让你的表操作炉火纯青

并且这个这个注释只是会出现在你的源代码中,不会存储到数据库中。

对表进行增删改查

1.新增数据

单行数据,全列插入

使用 insert (into) 表名 values (值,值); 新增数据,这里的into是可以省略的,但是不建议省略。

MySQL秘籍:让你的表操作炉火纯青
但是这里为什么会出现错误呢?很简单,因为这里默认的字符集是不支持汉字的,所以我们在创建库的时候需要指定字符集。
平时常用的字符集包括:
gbk 两个字节表示一个汉字
utf8 三个字节表示一个汉字(更通用)

MySQL秘籍:让你的表操作炉火纯青
MySQL秘籍:让你的表操作炉火纯青
这里 select * from student 是全列查询,我们先使用,后面再分析,知道是查询列就行了。

单行数据,指定列插入

不仅如此,我们还可以指定列插入,使用 insert into 表名 (列名,列名) values (值,值); 进行指定列插入。

MySQL秘籍:让你的表操作炉火纯青

多行数据插入

那么当我们想要插入多组数据的时候,难道我们要一组一组的添加吗?当然不是,我们可以一次添加多个数据。使用 insert into 表名(列名,列名) values (值,值),(值,值); 进行多个数据的插入,可以搭配着指定列插入。

MySQL秘籍:让你的表操作炉火纯青
这里一次插入多个数据跟一次插入一个数据来说,效率提高了不少,因为 一次插入N个记录(只需要客户端和服务器交换一次);分N次插入,一次插入一个记录(需要客户端与服务器交互N次); 客户端与服务器发生交互是需要时间的,所以一次插入多组数据大大节省了时间。

特殊类型:时间的插入

当我们想要插入数据的时候,只需要注意该信息所对应的数据类型就行了,但是都是这样的吗?有一个例外:时间的插入。时间的插入需要特定格式的字符串来插入,比如说要插入一段时间,我们需使用datetime类型,并且插入使用 ‘2023-05-31 23:35:30’,年月日之间用’ - ‘隔开,时分秒之间用’ : '隔开,时分秒与年月日用’ ‘隔开。

MySQL秘籍:让你的表操作炉火纯青
MySQL秘籍:让你的表操作炉火纯青
MySQL还提供了一个函数来表示当前时间。now() 表示当前时间。
MySQL秘籍:让你的表操作炉火纯青

2.查询数据

服务器会根据请求的sql查询保存的数据,把数据读取出来通过为网络返回给客户端,生成一个“临时表”(结果集)。

我们创建一个新的表来分析查询数据
MySQL秘籍:让你的表操作炉火纯青
MySQL秘籍:让你的表操作炉火纯青

全列查询

前面我们已经使用了全列查询select * from 表名; 。使用全列查询可以将表中的所有列都给显示出来。

" * “叫做通配符,可以理解为扑克牌中的赖子,不考虑大小王,赖子可以代替任何牌,所以这里” * "就可以理解为所有。

MySQL秘籍:让你的表操作炉火纯青

指定列查询

当数据量非常大的时候,使用 select * from 表名 操作可能会发生危险,因为服务器需要从数据库中短时间内读取出大量的数据,瞬间吃满硬盘带宽和网络带宽,导致其它程序无法使用硬盘或者网络。

那么我们可以只读取我们需要的列,而不是读取出所有列。
select 列名,列名··· from 表名;,指定列读取数据。
MySQL秘籍:让你的表操作炉火纯青

查询字段为表达式

在查询数据的时候,我们可以将列于列之间进行计算之后再显示出来,也可以是单列进行计算,需要注意是列与列之间的运算,不是行与行之间的计算。

😊 单列之间的计算
MySQL秘籍:让你的表操作炉火纯青
这里可能有人会问了,我创建表的时候不是定义了decimal(3,1)吗,那么这里的位数都超过3了,为什么还能显示出来呢?
答:前面我们说过我们看到的表只是一个临时表,跟数据库中的表其实并没有什么关系,所以临时表的数据类型取决于默认数据类型。

👨‍🦱列与列之间的计算
MySQL秘籍:让你的表操作炉火纯青
通过上面的图片我们可以知道,新的列名是我们进行计算的表达式。
但是我们可以看到这个列名chinese + math + english属实不好看且不直观,那么我们是否有办法可以使展示的列名好看又直观呢?

别名

使用 select 列名,列名 as 别名 from 表名; 来使显示出来的列名改为我们的别名。这里的as可以省略,但还是建议不省略。
MySQL秘籍:让你的表操作炉火纯青

去重

我们可以使用 select distinct 列名 from 表名;,来指定列进行去重,只保留一个数据。

MySQL秘籍:让你的表操作炉火纯青

查询结果排序

使用 select 列名 from 表名 order by 列名 desc(asc); ,后面的desc表示按降序排列,asc按升序进行排列。排序查询可以结合前面的指定列查询、别名、去重和表达式查询使用。

MySQL秘籍:让你的表操作炉火纯青
不仅如此,查询结果排序还可以指定多个列,在这多个列中分主次地位,也就是说他们所占的权重是从大到小的。按降序排列,就算你A后面的列大于B的列,但是你前面的列B大于A,那么B就排序在A的前面。

MySQL秘籍:让你的表操作炉火纯青
如果两个人的数学成绩相同,那么就接着比较语文成绩,如果语文成绩也相同的话就在比较英语成绩。

条件查询

select 列名 from 表名 where 子句; 在查询的时候指定查询条件,符合条件的数据留下,不符合的就跳过。

在使用条件查询之前,我们需要知道MySQL中有哪些比较运算符和逻辑与算符。

🎁比较运算符
MySQL秘籍:让你的表操作炉火纯青
🎁逻辑运算符
MySQL秘籍:让你的表操作炉火纯青

基本查询

MySQL秘籍:让你的表操作炉火纯青
MySQL秘籍:让你的表操作炉火纯青
这里可能会有人问了,既然我前面的chinese + math + english已经别名为total了,那么我的where后面可以将chinese + math + english换成total吗?
MySQL秘籍:让你的表操作炉火纯青
答案是不可以的,我们看报错可以知道,这里根本就不认识total,这是为什么呢?我前面不是重命名了吗?那是因为 sql命令是先执行where条件,然后再执行前面的select语句,所以在执行where条件的时候total并未定义。

and 与 or

and 与 or就类似于c语言和Java的&& 和 || ,是并且和或者的意思。
🎁and
MySQL秘籍:让你的表操作炉火纯青
🎁or
MySQL秘籍:让你的表操作炉火纯青

范围查询

between A and B ,查询出数据在A到B之间的数据,注意这里的范围是左闭右闭,A <= C <= B

MySQL秘籍:让你的表操作炉火纯青

in

如果我们需要查询出数学成绩为65、84、85的同学,该怎么办呢?我们可以使用 or 。
MySQL秘籍:让你的表操作炉火纯青
如果数据少的话,我们这样写倒无所谓,但是如果数据多的时候呢?我们难道也是一个or一个or写吗?很显然是不方便的,所以就有 in 来解决这个问题。
MySQL秘籍:让你的表操作炉火纯青

模糊查询

当我们需要找出姓孙的人,而不是每一个具体的人时,我们就可以使用模糊查询。MySQL的模糊查询是使用 like 关键字,用 % 代表任意0个或者N个字符, _ 代表1个字符。
🎁 % 表示1个或者多个字符
MySQL秘籍:让你的表操作炉火纯青
🎁 _ 表示1个字符
MySQL秘籍:让你的表操作炉火纯青

null查询

如果我们需要查询出没有考试数学的人也就是数学成绩为null的人怎么办?

MySQL秘籍:让你的表操作炉火纯青
根据上面的图我们可以知道,通过’ = '来判断是否为null是不行的,那么我们应该如何判断null呢?
1. <=>
2. is null 和 is not null

MySQL秘籍:让你的表操作炉火纯青

分页查询

当表中的数据太多的时候,如果我们将他从全部展现出来的时候,不光人看不过来,系统方面的压力也是特别大的,那么我们应该如何解决呢?
MySQL秘籍:让你的表操作炉火纯青
这个分页我们都见过吧,就是如此,我们每个表出现的数据可以使用 limit 来限制数据的个数。

MySQL秘籍:让你的表操作炉火纯青
limit当然也可以搭配前面的几种查询使用。
MySQL秘籍:让你的表操作炉火纯青
limit还可以搭配offset使用,查询从第几个开始的几个数据。
MySQL秘籍:让你的表操作炉火纯青

3.修改

update 表名 set 列名 = 值 where 子句
MySQL秘籍:让你的表操作炉火纯青

4.删除

delete from 表名 where 子句
MySQL秘籍:让你的表操作炉火纯青
记住这里的where条件要设置好,如果没有where和limit限制,那么这个表中的数据都会被删除,只剩下一个空表了。

结语

MySQL数据库的每一个操作都是很危险的,大家在操作的时候一定要小心再小心,如果你的操作失误并且sql命令执行时间较长的时候,可以及时使用按CTRL+C取消命令,这样可以尽量降低损失。

最后,祝大家儿童节快乐,在这个六一儿童节,愿你们的内心依然保持着童真,享受着生活的美好,永远拥有一个快乐的童年!文章来源地址https://www.toymoban.com/news/detail-467417.html

到了这里,关于MySQL秘籍:让你的表操作炉火纯青的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【MySQL多表查询】:让你的数据检索更高效

    前言 ✨ 欢迎来到小K的MySQL专栏,本节将为大家带来 MySQL 中多表查询相关知识的讲解 一、多表关系 ✨项目开发中,在进行数据库表结构设计时,会根据业务需求及业务模块之间的关系,分析并设计表结构,由于业务之间相互关联,所以各个表结构之间也存在着各种联系,基

    2024年02月09日
    浏览(38)
  • MySQL索引:让你的数据库查询快到起飞!

    💕世界上最美好的东西之一,就是你每天都有机会开始全新的一天。💕 🐼作者:不能再留遗憾了🐼 🎆专栏:MySQL学习🎆 🚗本文章主要内容:详细介绍如何查看、创建和删除MySQL索引,以及MySQL索引的底层原理:B+树。🚗 各位朋友们,大家好!前面我们已经介绍了MySQL的库

    2024年02月09日
    浏览(45)
  • VS2022连接数据库MySQL,并进行基本的表的操作

    1.连接MYSQL 2.添加MySQL的引用 环境配置 测试代码 在vs里面运行sql语句 启动vs2022,在菜单栏里面选择视图,打开服务器资源管理器   右键数据连接,点击添加连接 然后发现有MySQL选项,进入里面配置数据库的相关信息即可 配置信息 1.server name输入MySQL的IP地址 localhost即本地 2.然后

    2024年02月09日
    浏览(77)
  • 简单操作让你的网站不受恶意流量恶意爬虫威胁!Cloudflare防火墙部署指南

    目前国际有不少网站都挂了Cloudflare服务,Cloudflare主要提供的安全服务是帮助网站阻止来自网络的黑客攻击、垃圾邮件等,并提升网页的浏览速度等。笔者近日在Cloudflare为自己的网站部署好了防火墙(WAF)、抗DDoS等防护,颇有成效,因此给大家介绍一下,帮助大家更轻松地部

    2024年02月22日
    浏览(53)
  • 从小白到数据库达人!Mysql优化让你的社招面试无往不利!

    大家好,我是小米,在这个美好的时刻又迎来了我们的技术小窝。今天,我们要聊一聊一个在数据库领域中无比重要的话题 —— Mysql 优化 !是不是感觉很兴奋呢?废话不多说,让我们直接进入今天的主题。 首先,我们要了解一下 Mysql 到底是什么。 Mysql 是一个开源的关系型

    2024年02月14日
    浏览(34)
  • java通过JDBC连接mysql8.0数据库,并对数据库中的表进行增删改查操作

    目录 一、JDBC简介 二、添加依赖 三、JDBC操作数据库的步骤 四、JDBC操作数据库——增删改查 (一)新增数据 (二)删除数据 (三)修改数据 (四)查询数据 (五)多表连接查询         Java数据库连接,(Java Database Connectivity,简称JDBC)是java语言中用来规范客户端程序如何来访问数

    2024年02月03日
    浏览(127)
  • 【AI绘画:月入万元的秘籍】揭秘!这个AI绘画神器不仅让你拥有艺术天赋,还能轻松变现!跟着教程一起赚钱吧!

    随着AI的飞速发展,三页AI成为了创新艺术的新宠。它利用先进算法和大数据,使得个性化设计变得触手可及,轻松将你的照片变成独特的卡通形象。现在,每个人都有机会成为AI设计师! 今天为大家介绍一款上手非常简单的三页AI平台,对AI小白十分友好,无需魔法,微信即

    2024年03月16日
    浏览(50)
  • 【花雕学AI】微软 Bing 图像魔法师:让你的描述变成图像,让你的图像变成现实

    你有没有想过,如果你能够用语言来创造图像,那该有多么神奇和有趣?你有没有想过,如果你能够看到你想象中的图像,那该有多么震撼和美妙?现在,这一切都可以实现了,因为微软 Bing 图像魔法师来了!微软 Bing 图像魔法师是一款能够根据用户的描述生成图像的人工智

    2024年02月16日
    浏览(43)
  • 如何让你的 WebSocket 接口测试更高效?拯救你的接口测试工作

    目录 引言 WebSocket介绍 HTTP与WebSocket的区别 WebSocket测试方法 使用在线工具 使用Postman 使用Jmeter 使用Python 结语 你是否曾经为 WebSocket 接口测试中复杂的协议和难以捕获的数据而感到束手无策?WebSocket 协议与传统的 HTTP 协议不同,测试方法也需要针对其特殊性进行优化。 本文将

    2024年02月07日
    浏览(41)
  • 如何让你的结构体更高效

    文中所涉及到的代码运行结果均是在64位机器上执行得到的. 在Go中,我们可以使用 unsafe.Sizeof(x) 来查看变量所占的内存大小。以下是Go内置的数据类型占用的内存大小: 类型 内存大小(字节数) bool 1 int8/uint8 1 int/uint 8 int32/uint32 4 int64/uint64 8 float32 4 float64 8 complex64 8 complex128

    2024年02月08日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包