吐血总结《Mysql从入门到入魔》,图文并茂

VIP吐血总结《Mysql从入门到入魔》,图文并茂
文章目录1. 查询1.1 查询多列1.2 检索唯一值1.3 限制输出1.4 注释2. ORDER BY 排序2.1 单列排序3.2 多列排序3.3 指定排序方向4. WHERE 过滤数据4.1 WHERE 子句操作符4.2 范围值检查4.3 空值检查5. 高级数据过滤5.1 WHERE 组合过滤5.2 IN 操作符5.3 NOT 操作符6. 通配符过滤6.1 % 通配符6.2 _ 通配符7. 创建计算字段7.1 计算字段7.2 拼接字段7.3 执行算数计算8. 函数8.1 常用文本处理函数8.2 日期和时间
开通可读全文 ·3.1w 人阅读
最低0.47元/天 解锁文章

文章目录

1. 数据库操作

1.1显示数据库

mysql> SHOW DATABASES;

1.2 创建数据库

CREATE DATABASE 数据库名 CHARSET='编码格式'

mysql> CREATE DATABASE create_test CHARSET = 'utf8';

1.3 使用数据库

mysql> USE create_test;

1.4 查看当前数据库

使用 SELECT DATABASE() 查看当前使用的数据库。

mysql> SELECT DATABASE();
+-------------+
| DATABASE()  |
+-------------+
| create_test |
+-------------+

1.5 删除数据库

mysql> DROP DATABASE create_test;


2. 表操作

2.1 创建表

格式:

CREATE TABLE  [IF NOT EXISTS] `表名` (
	`字段名` 列类型 [属性] [索引] [注释],
	`字段名` 列类型 [属性] [索引] [注释],
	.......
	`字段名` 列类型 [属性] [索引] [注释]
) [表类型] [字符集设置] [注释]

使用下面的语句创建示例中的 one_piece 表。

mysql> CREATE TABLE one_piece
    -> (
    ->     id CHAR(10) NOT NULL COMMENT '海贼团id',
    ->     pirates CHAR(10) NOT NULL COMMENT '海贼团名称',
    ->     name CHAR(10) NOT NULL COMMENT '海贼名',
    ->     age INT(11) NOT NULL COMMENT '海贼年龄',
    ->     post VARCHAR(10) NULL COMMENT '海贼团职位'
    -> );

注意:创建表时,指定的表名必须不存在,否则会出错。

2.2 更新表

2.2.1 添加列

在刚才创建的 one_piece 表中添加一列 bounty (赏金)。

mysql> ALTER TABLE one_piece
    -> ADD bounty INT(15);
2.2.2 删除列

删除 bounty 列。

mysql> ALTER TABLE one_piece
    -> DROP COLUMN bounty;

2.3 查看表结构

mysql> DESC one_piece;
+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| id      | char(10)    | NO   |     | NULL    |       |
| pirates | char(10)    | NO   |     | NULL    |       |
| name    | char(10)    | NO   |     | NULL    |       |
| age     | int(11)     | YES  |     | NULL    |       |
| post    | varchar(10) | YES  |     | NULL    |       |
+---------+-------------+------+-----+---------+-------+

2.4 查看表详细信息

\G 后面不能加“ ; ”。

mysql> SHOW TABLE STATUS LIKE 'one_piece' \G
*************************** 1. row ***************************
           Name: one_piece
         Engine: InnoDB
        Version: 10
     Row_format: Dynamic
           Rows: 0
 Avg_row_length: 0
    Data_length: 16384
Max_data_length: 0
   Index_length: 0
      Data_free: 0
 Auto_increment: NULL
    Create_time: 2021-09-03 17:53:58
    Update_time: NULL
     Check_time: NULL
      Collation: utf8mb4_0900_ai_ci
       Checksum: NULL
 Create_options:
        Comment:
1 row in set (0.39 sec)

2.5 重命名表

两种方法:

  • ALTER TABLE 表名 RENAME [TO | AS] 新表名;
  • RENAME TABLE 表名 TO 新表名;

用方法一将 Products 表更名为 new_Products ,再用方法二改回来。

-- 方法一
mysql> ALTER TABLE one_piece RENAME TO new_one_piece;
-- 方法二
mysql> RENAME TABLE new_one_piece TO one_piece;

2.6 删除表

DROP TABLE 表名

mysql> DROP TABLE one_piece;

注意:在该表与其他表有关联时,Mysql 会阻止该表的删除。



3. 查询

3.1 查询多列

同时输出 name, age 列。

mysql> SELECT name, age
    -> FROM one_piece;

3.2 检索唯一值

使用 DISTINCT 关键字,查询字段 age 的唯一值。

mysql> SELECT DISTINCT age
    -> FROM one_piece;

3.3 限制输出

在 Mysql 中使用 LIMIT 关键字限制输出的数据。LIMIT 有两种常见用法:

SELECT * FROM table  LIMIT [offset], rows    -- LIMIT 单独使用
SELECT * FROM table  LIMIT rows OFFSET [offset]    -- 配合 OFFSET 使用    

offset:行开始的行的索引。0表示从第1行 开始显示(包括第1行),以此类推。

rows:数据显示的条数。

示例:

SELECT * FROM one_piece LIMIT 5;    -- 检索前5条数据
--相当于
SELECT * from one_piece LIMIT 0,5;    -- 从第0行开始检索5条数据
--相当于
SELECT * FROM one_piece LIMIT 5 OFFSET 0;    -- 从第0行开始检索5条数据,注意这里的LIMIT的5指代的是数量

注:如果表中数据不足,即LIMIT设定的数过大,则只会检索到最后一行。

3.4 注释

三种注释方式

-- 单行注释
# 单行注释
/* 多行注释 */


4. ORDER BY 排序

4.1 单列排序

使用 ORDER BY 子句。 ORDER BY 子句取一个或多个列的名字,据此对输出进行排序(默认升序)。

mysql> SELECT name, age
    -> FROM one_piece
    -> ORDER BY age;

**注意:**在指定一条 ORDER BY 子句时,应该保证它是 SELECT 语句中最后一条子句。

4.2 多列排序

mysql> SELECT A, B
    -> FROM test
    -> ORDER BY A, B;

在按多列排序时,仅在多个行具有相同的 A 值时 才按 B 进行排序。如果 A 列中所有的值都是 唯一的,则不会按 B 排序。
在这里插入图片描述

4.3 指定排序方向

ORDER 默认升序(从A到Z)排序。指定 DESC 关键字进行降序(从Z到 A)排序。

mysql> SELECT age
    -> FROM one_piece
    -> ORDER BY age DESC;

多列指定排序方向时,要使用逗号分隔。

mysql> SELECT name, age
    -> FROM one_piece
    -> ORDER BY name DESC, age;


5. WHERE 过滤数据

5.1 WHERE 子句操作符

操 作 符 说明 操作符 说明
= 等于 > 大于
<>、!= 不等于 >= 大于等于
< 小于 !> 不大于
<= 小于等于 BETWEEN 在两值之间(包含边界)
!< 不小于 IS NULL 是NULL值

5.2 范围值检查

使用 WHERE 关键字和 BETWEEN AND 进行范围值检查(前闭后闭)。

mysql> SELECT age
    -> FROM one_piece
    -> WHERE A BETWEEN 5 AND 10;

查询 字段 age 中 >=5 并且 <= 10 的数据。

5.3 空值检查

使用 WHERE 关键字和 IS NULL 进行范围值检查。如果没有 NULL 值就不返回数据。

mysql> SELECT name
    -> FROM one_piece
    -> WHERE name IS NULL;


6. 高级数据过滤

6.1 WHERE 组合过滤

使用 AND 、OR 操作符给 WHERE 子句添加附加条件。 AND 的优先级比 OR 要高,优先级高低 () 、 AND 、 OR。在使用的过程中要注意各个优先级的影响。

mysql> 
VIP 学习数据库Mysql/Oracle/SQL从入门到进阶书籍pdf版吐血整理推荐(珍藏版) 转载自某大佬博客:https://pymlovelyq.github.io/2018/10/12/database/ 前言:技术书阅读方法论 一.速读一遍(最好在1~2天内完成) 人的大脑记忆力有限,在一天内快速看完一本书会在大脑里留下深刻印象,对于之后复习以及总结都会有特别好的作用。 对于每一章的知识,先阅读标题,弄懂大概讲的是什么主题,再去快速看一遍,不懂也没有关系,但是一定要在不懂的地方做... 开通可读全文·5.7k 阅读·7 点赞·42 收藏 阅读全文

相关推荐

mac环境下MySQL安装与卸载【吐血排坑】

本文主要讲MySQL启动、安装、使用Navicat Prenium过程中可能会遇到的问题。首先排查Navicat Prenium软件问题,如果只是软件问题,就不用卸载重新安装MySQL了,如果软件问题排除后,发现MySQL环境有问题,我们再执行卸载和重新安装,最后排除一下二次安装后的MySQL和Navicat Prinum环境的其他问题,这样我们就能正常的使用MySQL了。 一、Navicat Premium的版本或许可问题 长时间不登陆MySQL,突然登陆的时候提示Navicat Premium试用过期了

changchuanlai 1600

Power Automate Desktop实战:一键自动登录Chrome网站

本文详细介绍了如何使用Power Automate Desktop实现Chrome网站的一键自动登录,提升工作效率。从环境准备、基础配置到高级技巧与异常处理,全面解析自动化登录流程的构建与优化,特别适合需要频繁登录多个系统的用户。

weixin_29231725的博客 466

智能枕头

睡觉和吃饭是一样重要的,一个人想要健康的体魄,不仅要饮食得当,更需要有一个好的睡眠质量。随着人们生活品质的提高,人们对于睡眠的要求越来越高,那么就非常需要一款舒适的枕头。为了适应市场的需求,我爱物联网推出了智能枕头。因为智能枕头可以给头部及颈椎一个良好的承托力,舒适、柔软、放松,让人更好的进入睡眠。 目录 一、智能枕头方案介绍 二、智能枕头的优点 三、智能枕头功能介绍 四、智能枕头APP开发 五、...

6108我爱物联网方案开发优快云博客 3659

Oracle-OGG trail 文件大小引起的进程异常 OGG-01172

监控OGG目标端进程,其中一个进程异常,状态为 ABENDED,start repa 执行失败。进入OGG报告目录检查运行报告 2015-04-20 09:38:36 ERROR OGG-01172 Discard file (/ogg/oggrm/11.2/dirdat/repa.dsc) exceeded max bytes (2000000000). 总结处理方法,从根本上解决问题。

xdyzgjy的专栏 7956

基于ArduPilot的旋翼式无人机飞行器开发系列(二,学习路线)

一,热爱 作为一名耿直的技术男,在这里我只想说一句,热爱是可持续学习的第一要素,也只有热爱才能让你坚持到最后。 至于最后能得到什么,只有你自己知道。常说书中自有颜如玉,书中自有黄金屋。如果你是为了颜如玉,我相信大多数颜如玉做不了你的红颜知己。如果是为了黄金屋,当你持续投入时间和金钱却看不到回报的时候,相信退堂鼓早已隆隆作响。 我给自己的信条就是为当下努力工作,为将来持续学习。当前飞控行业并没有爆发,如果想赚块钱,去互联网汽车,去VR/AR吧,去元宇宙吧。 那么我热爱...

从0到1,突破自己 1666

永恒之蓝漏洞复现(ms17-010)

Metasploit Framework(MSF)是一款开源安全漏洞检测工具,附带数千个已知的软件漏洞,并保持持续更新。Metasploit可以用来信息收集、漏洞探测、漏洞利用等渗透测试的全流程,被安全社区冠以“可以黑掉整个宇宙”之名。刚开始的Metasploit是采用Perl语言编写的,但是再后来的新版中,改成了用Ruby语言编写的了。在kali中,自带了Metasploit工具。

渗透之路,攻防之间皆学问 2万+

RK3568平台(camera篇)点亮imx586摄像头

mipi摄像头硬件确认点:1.供电:5V,2.8V,1.2V,1.8V,reset脚(硬拉3.3,上电的时候从低到高),pwron脚外接3.3V。2,时钟:MCLKOUT是24兆时钟。3.4组差分mipi线。mipi的data线的波形为方波。

weixin_49303682的博客 7257

Tesla v100 4张显卡组装机安装vllm和ollama在Ubuntu系统上的安装---AI大模型系统从零开始0032

本文提供Ubuntu22.04系统下vLLM的完整安装指南,适配4×32G Tesla显卡的单机4卡张量并行部署。教程包含:1)硬件要求(Ubuntu22.04、NVIDIA驱动≥535、CUDA12.1+);2)NVIDIA驱动自动安装方法;3)Python3.10虚拟环境配置;4)vLLM官方预编译包一键安装;5)单机4卡启动Qwen3.6-27B模型的完整参数说明(含FP8量化、多进程并行等关键配置)。文末附分布式部署的Ray集群方案参考链接,适用于多机8卡场景。

添柴程序猿的专栏 176

华为od 面试八股文_前端_01_含答案

华为od 面试八股文_前端_01_含答案

MISAYAONE的博客 2748

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

上一篇: 【计算机设计大赛近年获奖信息】数据分析及可视化
下一篇: Python实用工具之制作证件照(有界面、附源码、赞关藏)
Dream丶Killer
Dream丶Killer 优质创作者: python技术领域 优质创作者: python技术领域
博客等级 码龄8年 7万+粉丝 187原创
评论 184
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

打赏作者

Dream丶Killer

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

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

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

打赏作者

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

抵扣说明:

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

余额充值