MySQL表的增删改查初阶(上篇)

本篇会加入个人的所谓鱼式疯言

❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言

而是理解过并总结出来通俗易懂的大白话,

小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的.

🤭🤭🤭可能说的不是那么严谨.但小编初心是能让更多人能接受我们这个概念 !!!

前言

在上一篇我们讲解了对于数据库这个 管理数据 的 "逻辑集合" 以及对 数据表创建删除 进行了详细的解析,我们知道这样的关联关系===> 就是说我们 数据库------》数据表------》 数据列 ------》 数据行 ------》 数据

上篇我们讲解了数据库 和 数据表的基本操作

而本篇我们直奔主题,直接讲解 数据列数据行基本操作

目录

  1. CRUD 的认识

  2. 新增数据

  3. 全列查询

  4. 指定列查询

  5. 表示式查询

  6. 别名查询

  7. 去重查询

一. CRUD的认识

CRUD 的意思就是增删改查 的意思 : Create (增加)Delete(删除)Update(修改)Retrieve(查询) 就是这个首字母的缩写

1. 数据表CRUD

我们都知道对于数据表是什么? 数据表就是一个 存放数据的地方,在我们生活中 对数据进行 增删改查 是很常见的, 我们数据表的 增删改查 是很重要的

2. 数据库的注释方式

数据库的注释方式 和 我们 C语言Java中 的 注释风格 是不一样的,数据库的注释主要有三种

<1>. 创建表的注释

这是小伙伴们上一篇学习过的 注释 ,也就是 用我们的 comment创建表结构的这个操作时,进行的注释

SQL 语句

sql 复制代码
comment  '注释内容' ;

<2>. 单行注释一

可以用我们的

SQL语句

sql 复制代码
--   注释内容 

<3>. 单行注释二

可以用我们

SQL语句

是的,当我们用这个 注释敲下去再回车 的时候,MySQL 是不会有任何反应 的,说明我们的注释方式是正确的

二. 新增数据

1. 单行插入

<1>. SQL语句

sql 复制代码
insert into 表名 values  (列1数据,列2数据,列3数据);

<2>. 语句说明

对数据表增加数据的标识关键字就是 insert into ,后面对应我们 的表名 ,然后 values 在 小括号内 进行 数据的增加

<3>. 注意事项

对应插入表数据的操作,我们要注意的三点就是 :

  1. 插入的数据要和我们表结构的数据类型 统一 : 整型要对应整型 ,字符串要加上 ' ' 或者 " " (小编的建议是用 ' ' 即可) ,以及浮点数的宽度和字符串的大小都 不可以多大
  2. 特别的日期类型: 我们的日期类型要注意有格式的插入 :不仅要带上 ' ' ,还要注意年月日用 - 来接,时分秒用
  3. 每一列的数据是用 , 来 隔开的 , 并且必须按 顺序有条理 的插入

鱼式疯言

如果我们忘记表结构都有那些列和数据类型怎么办呢 ?

这里小编教大家一个小技巧

我们可以先用 desc + 表名 先查询我们表结构,再进行插入

2. 指定列插入

<1>. SQL 语句

sql 复制代码
insert into  表名(指定字段1, 指定字段2) values (字段1数据,字段2数据);

<2>. 语句说明

  1. 这里的指定字段(列) ,不一定是要按照我们的表中字段的顺序来指定的,只要 添加数据时 和我们的表中字段的 数据类型相统一 就可以。

2.当未指定的字段 ,那么我们没有添加数据,MySQL 就是自动把他们置为 null

鱼式疯言

除了我们 指定特点的列 之外,其实我们对于未知的数据,我们也可以手动置为 null

3. 多行插入

<1>. SQL语句

sql 复制代码
insert into 表名  values (列1数据1,  列2数据1, 列3 数据1... )
,(列1数据2,列2数据2,列3数据3 ....)... ;

<2>. 语句分析

和我们 单行插入数据 相比,只不过是后面加上了 逗号 +()

小伙伴只需 对应好数据类型 ,就可方便使用了 💖 💖 💖 💖

<3>. 注意事项

如果我们要 多行插入指定列插入 结合起来用的时候,一定要注意的是:
你插入的每一行数据 都要符合该 指定 列的个数,顺序 和 数据类型

提完插入新增数据,我们就到了小伙伴期待已久的查询数据

说到 查询 那我们一定是不陌生的吧,毕竟我们生活中处处充满查询

就是我们这样点开百度,输入关键字,就会查询到各种各样的结果,所以我们的查询是 CRUD 中最常用的 , 也是最重要,相对而言最复杂的 。

不过小伙伴们,别着急哦,知识是慢慢学的 ,相信有小编的带领,小伙伴一定能学懂学好学精 我们的 MySQL的查询操作

三. 全列查询

小编说全列查询,小伙伴一定见过,你们信不信呢 😁 😁 😁 😁

1. SQL 语句

sql 复制代码
select * from 	表名 ;

2. 语句说明

是的,这就是我们 刚新添数据 时,前面给小伙伴演示 数据表的数据 ,也就是我们的 全列查询

我们可以看到 对于查询我们的 标志性关键字 就是 select

而我们用到 * 就是小编重点要提及的 通配符 , 回忆一下我们Java是不是也有 这个 * 也叫通配符 ? ? ?

是的,在我们 导包时就用 * 这样的通配符

java 复制代码
import java.util.*;

它所处的作用和我们的 Java 是一样的,都代表我们 全部,所有

所以用 * 就能查询到我们该数据表所有的列的信息 , 这就是全列查询。

3. 注意事项

对于全列查询是有风险的, 对于小点的数据还好 ,但是对于大公司的数据来说,就有可能把公司的数据库搞挂 , 所以小伙伴们 使用 全列查询 时要小心哦 🤔 🤔 🤔 🤔

四. 指定列查询

1. SQL语句

sql 复制代码
select 指定列名1, 指定列名2 ... from   表名 ;

2. 语句说明

对于 指定列查询 ,本质上就是把 通配符 改成我们 想要的哪些列 ,就可以在对应的数据表中显示我们的数据 需要的信息 .

五. 表达式查询

1. SQL语句

sql 复制代码
select  运算公式   from 表名 ;

2. 语句说明

  1. 对应表达式核心的地方还是在 select 后面的表达式上 , 我们只需要用上 合适的表达式,我们的 列名和对应列的结果 就会 同时发生改变
  2. 这只是在 查询结果进行了计算 ,但我们真正的数据本身还是存在 硬盘 上,并没有 发生改变
    总而言之,这只是一份 临时的数据 .

六. 别名查询

1.SQL语句

sql 复制代码
select 列名 [as]  新的列名  from 表名;

2. 语句分析

取别名 的标识关键字就是我们的 as , 但这里的 as 是带上 【】 , 说明我们的 as可写可不写 的, 就像下面这样也能做到 同样的效果

3. 注意事项

这里的用 as 重命名 或者叫 取别名 时,如果是 字符串 的这样类型 , 我们的区别不是很大,效果是一样的.

鱼式疯言

虽然 as 可以省略, 但小编这里的建议是最好加上,因为我们的 as 是作为我们取别名的一种 `标志性的关键字 的。为了咱们代码的可读性,小编建议是加上哦

七. 去重查询

1. SQL语句

sql 复制代码
select  distinct   列名   from   表名 ;

2. 语句说明

对于 去重查询 的标识关键字就是我们 distinct ,只要它加到对应的 列名上 ,该列就 不会出现重复的数据

鱼式疯言

这里小编要说明的是,这里的查询是 最基础最简单的SQL语句 的执行,小伙伴也可以把这些基础的查询结合 到一起去使用,发挥出我们需要的效果出来
比如 表达式查询 可以和 别名查询 一起使用哦。

总结

在本篇文章中我们共收获了

  • 初识 CRUD 的 增删改查

  • 新增数据

  1. 单行插入
sql 复制代码
insert into  表名   values  (数据1,数据2 ...);
  1. 指定列插入
sql 复制代码
insert   into  表名 (列名1, 列名2 ...) values  ( 数据1,  数据2 ... );
  1. 多行插入
sql 复制代码
insert  into 表名  values (A数据1,A数据2...), (B数据1, B数据2) ;
  • 全列查询
sql 复制代码
select * from 表名 ;
  • 指定列查询
sql 复制代码
select 指定列名1 , 指定列名2 ...  from  表名;
  • 表示式查询
sql 复制代码
select 运算公式  from  表名;
  • 别名查询
sql 复制代码
select  列名  [as]   新的列名 from 表名;
  • 去重查询
sql 复制代码
select  distinct  列名   from  表名;

如果觉得小编写的还不错的咱可支持 三连 下 (定有回访哦) , 不妥当的咱请评论区 指正
希望我的文章能给各位宝子们带来哪怕一点点的收获就是 小编创作 的最大 动力 💖 💖 💖

相关推荐
qq_5298353518 分钟前
对计算机中缓存的理解和使用Redis作为缓存
数据库·redis·缓存
月光水岸New3 小时前
Ubuntu 中建的mysql数据库使用Navicat for MySQL连接不上
数据库·mysql·ubuntu
狄加山6753 小时前
数据库基础1
数据库
我爱松子鱼3 小时前
mysql之规则优化器RBO
数据库·mysql
chengooooooo3 小时前
苍穹外卖day8 地址上传 用户下单 订单支付
java·服务器·数据库
Rverdoser4 小时前
【SQL】多表查询案例
数据库·sql
Galeoto4 小时前
how to export a table in sqlite, and import into another
数据库·sqlite
人间打气筒(Ada)5 小时前
MySQL主从架构
服务器·数据库·mysql
leegong231115 小时前
学习PostgreSQL专家认证
数据库·学习·postgresql
喝醉酒的小白5 小时前
PostgreSQL:更新字段慢
数据库·postgresql