Bootstrap

数据库的增删改查

目录

SQL语句

增(insert)

一次性添加多条:

不推荐使用

改(update)

对整张表进行修改

带条件的修改(当满足where后的条件才会进行修改)

多条件的修改(使用and或or进行连接)(当满足where后的条件才会进行修改)

范围型的多条件修改(between...and)

删(delete)

带条件的删除(当满足where后的条件才会进行删除)

不带条件的删除(删除整张表)

多条件的删除(当满足where后的条件才会进行删除)

查(select)

普通查询

查询全部

单个字段的查询

 多个个字段的查询

 去除重复的数据

 带条件的查询

  多条件的查询

 like模糊查询(一般用于查询名字)

in在某个特定范围

查询null(is)

聚合函数

计算查询数据的数量

计算查询数据的总和

计算查询数据的最大值

计算查询数据的最小值

计算查询数据的平均值

分组

查询后进行分组(更加字段名分组)

查询后进行分组,对数据进行处理

查询后进行分组,对数据进行处理,并按字段进行排序(升序)

多表联查

内联查询(inner join)

左外联查询(left join)

右外联查询(right join)


SQL语句

SQL语句,即结构化查询语言(Structured Query Language),是一种特殊目的的编程语言,是一 种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统,同时也是数据库 脚本文件的扩展名。

SQL语句可以分为4大类:DDL(数据定义语言),DML(数据操作语言),DQL(数据查询语言),DCL(数据控制语言)。

今天要讲的就是DML(增insert,删delete,改update)和DQL(查询select)。

增(insert)

insert into 表名(字段名,...,字段名 ) value/values (值,...,值)

value(添加一条数据)

values(一次性添加多条数据)

一次性添加多条:

insert into 表名(字段) values (第一条的值),(第二条的值)

不推荐使用

方式一:

insert into 总表名 select 字段 from 旧表名 

新进行查询,查到后插入总表

方式二:

create table 新表 select 字段 from 旧表

新进行查询,查到后进行创造新的表

改(update)

修改必须要加条件

update 表名 set 字段名=值,...,字段名=值 where 子句(条件)

对整张表进行修改

update 表名 set 字段名=值,...,字段名=值 

带条件的修改(当满足where后的条件才会进行修改)

​update 表名 set 字段名=值,...,字段名=值 where 字段=某个值

多条件的修改(使用and或or进行连接)(当满足where后的条件才会进行修改)

​update 表名 set 字段名=值,...,字段名=值 where 字段=某个值 and 字段=某个值

​update 表名 set 字段名=值,...,字段名=值 where 字段=某个值 or 字段=某个值

范围型的多条件修改(between...and)

​update 表名 set 字段名=值,...,字段名=值 where 字段 between 某个值 and 某个值

删(delete)

必须要带上条件(否则会直接将整张表删除)

带条件的删除(当满足where后的条件才会进行删除)

delete from 表名 where 字段 = 某个值

不带条件的删除(删除整张表)

delete from 表名 

多条件的删除(当满足where后的条件才会进行删除)

delete from 表名 where 字段 = 某个值 and 字段 = 某个值

查(select)

普通查询

所有的查询都是虚拟表

查询全部

select * from 表名

不建议使用*,建议将每个字段都写出来

单个字段的查询

select 字段 from 表名

 多个个字段的查询

select 字段,...,字段 from 表名

 去除重复的数据

select distinct 字段,...,字段 from 表名

 带条件的查询

select 所查的字段 from 表名 where 条件表达式

  多条件的查询

select 所查的字段 from 表名 where 条件1 and 条件2
select 所查的字段 from 表名 where 条件1 or 条件2

条件是可以为字段大于,等于,小于,大于等于,小于等于,不等于某个值。

 like模糊查询(一般用于查询名字)

模糊符号:%  代表任意多的字符。

模糊符号:_    代表一个任意字符。

三条SQL语句是前模糊,后模糊,前后都模糊查询

select 所查的字段 from 表名 where 字段名='%key'
select 所查的字段 from 表名 where 字段名='key%'
select 所查的字段 from 表名 where 字段名='%key%'

in在某个特定范围

select 所查字段 from 表名 where 字段名 in (值,...)

查询null(is)

select 所查字段 from 表名 where 字段名 is null
select 所查字段 from 表名 where 字段名 is not null

聚合函数

计算查询数据的数量

select count(*) from 表名

count()的三种写法

count(*)

count(1)常量都行

count(字段的主键)

计算查询数据的总和

select sum(字段名) from 表名

计算查询数据的最大值

select max(字段名) from 表名

计算查询数据的最小值

select min(字段名) from 表名

计算查询数据的平均值

select avg(字段名) from 表名

分组

group by 要分组的字段

having 筛选,分组之后要对数据进行筛选

order by 多个字段进行排序

升序:asc(默认)

降序:desc

查询后进行分组(更加字段名分组)

select 所查的字段 from 表名 group by 字段名

查询后进行分组,对数据进行处理

select 所查的字段 from 表名 group by 字段名 having 过滤的表达式

查询后进行分组,对数据进行处理,并按字段进行排序(升序)

select 所查的字段 from 表名 
group by 字段名 
having 过滤的表达式
order by 字段名 asc
select 所查的字段 from 表名 
group by 字段名 
having 过滤的表达式
order by 字段名

多表联查

关键字on后的是两张表的连接条件。

内联查询(inner join)

select 所查的字段 from 表名 inner join 另外一张表 on 表1.字段1=表2.字段1

左外联查询(left join)

select 所查的字段 from 主表名 left join 副表名 on 主表.字段1=副表.字段1

右外联查询(right join)

select 所查的字段 from 副表名 right join 主表名 on 主表.字段1=副表.字段1

;