作者主页paper jie_博客

本文作者大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。

本文录入于《MySQL》专栏,本专栏针对大学生编程小白精心打造的。笔者用重金(时间和精力)打造,将MySQL基础知识一网打尽,希望可以帮到读者们哦。

其他专栏:《算法详解》《C语言》《javaSE》《数据结构》等

内容分享:本期将会分享MySQL表的基础增删查改

目录

前言

新增(Create)

语法

全列插入单行数据

指定列插入多行

查询(Tetrieve)

语法

全列查询

指定列查询

查询字段为表达式

别名查询

去重查询(distinct )

排序(order by)

条件查询(where)

基本查询

and与or

between and

in

模糊查询: like

null查询: is(not)null

分页查询(limit)

修改(update)

语法

全列修改

指定修改

删除(delete)

语法

删除整个表内容

删除指定记录

总结


前言

程序猿这个圈子里一直有一个常用词CRUD,也就是我们口中的增删查改. 即增加(Create)、查询(Retrieve)、更新(Update)、删除(Delete)四个单词首字母缩写.这里我们聊的就是MySQL的表的增删查改.

新增(Create)

语法

insert into 表名 values(参数.....);
insert into 表名(类型) values(参数....);

 举例准备:

create table student(id int, name varchar(20), sex varchar(20));

全列插入行数

insert into student values(1, '孙悟空', '石头人');
insert into student values(2, '八戒', '猪');

指定插入多行

insert into student(id,name) values(3, '唐僧');
insert into student(name) values('金角大王');

查询(Tetrieve)

语法

//全列查询
select * from 表名; 
//指定查询
select (类型,类型....) from 表名;
 

栗子前准备:

create table score(naem varchar(20), chinese decimal(4, 2), english decimal(4,2), math decimal(4,2));

全列查询

select * from score;

指定查询

select name, math from score;

查询字段表达式

select name, chinese+english+math from score;

别名查询

select name, chinese+math+english astotal from score;

去重查询(distinct )

select distinct math from score;

排序(order by)

//升序排序:
select * from score order by math;
//降序排序:
select * from score order by math desc;

使用表达式别名排序:

//升序:
select name, math+chinese+english as total from score order by total;
//降序:
select name, math+chinese+english as total from score order by total desc;

多个字段进行排序:

//升序:
select * from score order by math, english, chinese;
//降序:
select * from score order by math, english, chinese desc;

条件查询(where)

比较运算符:

运算符

作用
> >= < <=

大于,大于等于,小于,小于等于

= 等于,但是null不同,null = null结果null
<=> 等于,可以使用null,null<=>null的结果true
!= <> 不等于
between..and… 范围表达  [a1, a2] 闭区间

in(a1, a2, a3….)

括号里的任意一个,返回true
is null 是null
is not null 不是null
like 模糊匹配 %表示任意多个字符  (字符%)

逻辑运算符:

运算符 作用
and 多个条件true,才为true
or 任意一个条件true,结果就为true
no 条件结果true,结果false

这里需要注意:

where条件查询的时候不可以使用别名

and的优先级高于or

基本查询

select * from score where math < 60;

select * from score where Chinese > english;

select * from score where chinese+math+english < 150;

and与or

select * from score where chinese >60 and math > 60;

select * from score where chinese >60 or math > 60;

select * from score where chinese >60 or math > 60 and english < 80;

between and

select * from score where chinese berween 60 and 90;

in

select * from score where chinese in(10, 39, 60, 70, 80);

模糊查询: like

select * from score where name like '孙%';

select * from score where name like '%孙';

//只能匹配个字符
select * from score where name like '孙_';

select * from score where name like '_孙';

null查询: is(not)null

select * from score where name is null;

select * from score where name is not null;

分页查询(limit)

//默认第一行开始查询:
select * from score limit 3;
//从指定行开始查询:
select * from score limit 3 offset 0;

注意这里的0就是第一行,和数组下标是一样的~

修改(update)

语法

update 表名 set 参数 = 预期值;

全列修改

update score set chinese = 80;

指定修改

update score set chinese = 70 where math > 60;

删除(delete)

语法

delete from 表名;
delete from 表名 where 限定条件;

删除整个表内容

delete from score;

删除指定记录

delete from score where english < 60;

总结

新增:

单行插入:

insert into 表(字段1, …, 字段N) values (value1, …, value N);

多行插入
insert into 表(字段1, …, 字段N) values
(value1, …),
(value2, …),
(value3, …);

查询:

— 全列查询
select * from 表

— 指定列查询
select 字段1,字段2… from 表

— 查询表达式字段
select 字段1+100,字段2+字段3 from 表

别名
select 字段1 别名1, 字段2 别名2 from 表

— 去重DISTINCT
select distinct 字段 from 表

排序ORDER BY
select * from 表 order by 排序字段

— 条件查询WHERE:
— (1)比较运算符 (2)BETWEEN … AND … (3)IN (4)IS NULL (5)LIKE (6)AND (7)OR
(8)NOT
select * from 表 where 条件

修改:

update 表 set 字段1=value1, 字段2=value2… where 条件

删除:

delete from 表 where 条件

原文地址:https://blog.csdn.net/paperjie/article/details/134270540

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_17581.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注