欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MySQL表的增删改查

程序员文章站 2022-03-09 08:41:36
...

MySQL 表的 CRUD
CRUD 即 新增(Create), 查询(Retrieve), 更新/修改(Update), 删除(Delete)

(针对成绩统计这个案例进行举例)
MySQL表的增删改查

1.新增
1.1 新增单行数据

insert into 表名 values ( value1, value2 ...);

例如:MySQL表的增删改查
1.2 新增多行数据

insert into 表名 values 
(value1, ...),
(value2, ...),
...
(valuen, ...);

例如:
MySQL表的增删改查

1.3 指定列插入
(1.1 和 1.2 这两种情况就是全列插入)
value_list 的数量必须和指定列数相等.

insert into 表名 (字段1, 字段2) values(value1, value2)

例如:
MySQL表的增删改查

  1. 查询

2.1 全列查询

!!!通常不建议使用 * 进行全列查询
----查询的列越多, 意味着要传输的数据量越大
----可能会影响到索引的使用

select * from 表名;

例如:
MySQL表的增删改查

2.2 指定列查询

select 字段1, 字段2... from 表名;

例如:MySQL表的增删改查
2.3 查询表达式字段

select 字段1 + 字段2 .... from 表名;

例如:MySQL表的增删改查

2.4 别名
为查询结果中的列指定别名, 返回的结果中, 以别名作为该列的名称

select 字段1 as 别名1, 字段2 + 字段3 .. as 别名2 from 表名;

例如:
MySQL表的增删改查
2.5 去重 distinct

select distinct 字段 from 表名;

例如:
去重前
MySQL表的增删改查

去重后
MySQL表的增删改查
2.6 排序 order by
没有 order by 语句查询得到的结果的顺序是未定义的,不值得依赖

(a) 默认为 asc 即 升序排序
NULL 认为比任何值都小

select 字段1, 字段2... from 表名 order by 字段2 (asc);

例如:MySQL表的增删改查
(b) 后面加上 desc 表示按照降序排序

select 字段1, 字段2... from 表名 order by 字段2 desc;

例如:MySQL表的增删改查
© 使用表达式及别名排序

select 字段1, 表达式 ... as 别名 from 表名 order by 别名/ 表达式 asc/desc;

例如:
MySQL表的增删改查

(d) 对多个字段进行排序, 排序的优先级根据书写顺序

select 字段1, 字段2, 字段3... from 表名 order by 字段1 desc/asc, 字段2, 字段3;

2.7 条件查询 where

比较运算符:
MySQL表的增删改查
逻辑运算符:MySQL表的增删改查
注:
where 条件可以试验表达式, 的但不能使用别名;
and 的优先级高于 or

语法实现:

select 字段1, 字段2... from 表名 where 表达式;

例如:
基本查询:MySQL表的增删改查
and 与 or :MySQL表的增删改查
MySQL表的增删改查
范围查询:
(a)

between ... and ...

MySQL表的增删改查
(b)

in

MySQL表的增删改查
模糊查询:

like

(a) % 匹配多个字符(使用 % 的位置有若干个字符)
MySQL表的增删改查
(b) _匹配一个字符
MySQL表的增删改查
NULL 的查询:
(a)

is not null

MySQL表的增删改查
(b)

is null

MySQL表的增删改查

2.8 分页查询
从 s 开始筛选 n 条结果

limit n offset s

MySQL表的增删改查

  1. 修改 (update … set … )
update 表名 set 字段1 = xxx, 字段2 = xxx [where...] [order by...][limit...];

MySQL表的增删改查

  1. 删除 (delete)
delete from 表名 [where...] [order by..] [limit...]

MySQL表的增删改查

总结:

新增:MySQL表的增删改查
查询:
MySQL表的增删改查

MySQL表的增删改查
修改:MySQL表的增删改查
删除:
MySQL表的增删改查