表中数据的增删改查

一.增:

1.向表中插入数据(全部):

1)在INSERT语句中指定所有字段名:

“insert into 表名(字段名1,字段名2,……) values(值1,值2,……);”

(注:在插入数据时,INSERT语句中字段的顺序可以和数据库中表字段的顺序不一致,但VALUES中的值一定要和INSERT语句中字段的顺序对应。)

2)在INSERT语句中不指定字段名:

“insert into 表名 values(值1,值2,……);”

(注:使用这种方式来插入数据,VALUES中值的顺序必须和数据表中字段的顺序对应,否则会出现错误。)

2.向表中插入数据(部分):

insert into 表名(字段名1,字段名2,……) values(值1,值2,……);”

(注:(1)每个值的顺序、类型必须和字段名对应。   (2)指定字段无须和数据表中定义的顺序一致,只要和VALUES中值的顺序一致即可。)

3.向表中批量插入数据:

“insert into 表名(字段名1,字段名2,……) values(值1,值2,……),(值1,值2,……),…… ,(值1,值2,……);”

(注:每个值的顺序、类型必须和字段名对应。)

二.改:

修改表中数据:

“update 表名

set 字段名1 = 值1,[字段名2 = 值2,]

[where 条件表达式];”

(注:(1)如果要更新多个字段的值,可以用逗号分隔多个字段和值,“WHERE条件表达式”是可选的,用于指定更新数据需要满足的条件。  (2)当UPDATE语句中不使用WHERE条件语句时,会将表中所有数据的指定字段全部更新。)

三.删:

1.使用delete删除数据:

1)删除所有数据:“delete from 表名;”

2)删除部分数据:“delete from 表名 where 字段名1 = 值1;”

(注:不使用where条件语句时,表中所有数据将会被删除。)

2.使用truncate删除数据:

删除所有数据:“truncate table 表名;”

(注:(1)delete语句后面可以跟where子句指定条件,从而实现删除部分数据,turncate语句只能用于删除表中所有的数据。  (2)使用TRUNCATE语句删除表中的数据后,再次向表中添加记录时,自增字段的默认值重置为1,而使用DELETE语句删除表中数据后,再次向表中添加记录时,自增字段的值为删除时该字段的最大值加1。)

四.查:

1.基础查询:

1)查询所有数据:“select * from 表名;”

(注:用这种方式查询出的结果集中的字段顺序不能改变,只能与数据表中的字段顺序一致。)

2)查询部分数据:“select 字段名1,字段名2,……,字段名n from 表名;”

(注:在查询时指定的字段顺序与数据表中的字段顺序不一致,查询出来的结果集会按照指定的字段顺序显示。)

2.条件查询:

1)带关系运算符的查询:“select 字段名1,字段名2,…… from 表名 where 条件表达式;”

 

 

 (注:“!=”和“<>”都表示不等于,有个别数据库不支持“!=”,因此建议使用“<>”。)

2)带and关键字的查询:“select 字段名1,字段名2 ,…… from 表名 where 条件表达式1 and 条件表达式2 ……;”

(注:过滤时要满足所有查询条件。)

3)带or关键字的查询:“select 字段名1,字段名2 ,…… from 表名 where 条件表达式1 or 条件表达式2 ……;”

(注:过滤时只要满足其中一个查询条件即可。)

4)带in或not in关键字的查询:“select 字段名1,字段名2 ,…… from 表名 where 字段名 [not] in(元素1,元素2,……);”

 

(注:1]判断某个字段是否在指定集合中,如果不满足条件,则数据会被过滤掉。  2]NOT是可选的,表示不在集合范围中,元素1、元素2等是集合中的元素。)

5)带is null或is not null关键字的查询:“select 字段名1,字段名2 ,…… from 表名 where 字段名 is [not] null;”

(注:判断是否为空值。)

6)带between and关键字的查询:“select 字段名1,字段名2 ,…… from 表名 where 字段名 [not] between 值1 and 值2 ……;”

(注:判断某个字段的值是否在指定范围内,若不在指定范围内,则会被过滤掉。)

7)带like关键字的查询:“select 字段名1,字段名2 ,…… from 表名 where 字段名 [not] like '匹配字符串';”

(注:“匹配字符串”用来指定要匹配的字符串,这个字符串可以是一个普通字符串,也可以是包含百分号(%)和下画线(_)的通配符字符串,其中百分号表示任意0~n个字符,下画线表示任意一个字符。)

8)带distinct关键字的查询:“select distinct 字段名 from 表名;”

(注:用于去除重复数据。)

3.高级查询:

1)排序查询:“select 字段名1,字段名2,…… from 表名 order by 字段名1 [asc|desc],字段名2 [asc|desc],……;”

(注:asc和sesc参数是可选的,其中ASC代表按升序排序,DESC代表按降序排序,如果不写该参数,默认按升序排序。)

2)聚合函数:

<1>count()函数:“select count(*|1|列名) from 表名;”

(注:返回行数)

<2>sum()函数:“select sum(字段名) from 表名;”

(注:用于计算指定列的数值和,如果指定列的类型不是数值类型,那么计算结果为0。)

<3>avg()函数:“select avg(字段名) from 表名;”

(注:用于计算指定列的平均值,如果指定列的类型不是数值类型,那么计算结果为0。)

<4>max()函数:“select max(字段名) from 表名;”

(注:用于计算指定列的最大值,如果指定列是字符串类型,那么使用字符串排序运算。)

<5>min()函数:“select min(字段名) from 表名;”

(注:用于计算指定列的最小值,如果指定列是字符串类型,那么使用字符串排序运算。)

3)分组查询:“select 字段名1,字段名2,…… from 表名 group by 字段名1,字段名2,……;”

(注:1>进行分组。  2>通常与聚合函数一起使用。)

4)having子句:“select 字段名1,字段名2,…… from 表名 group by 字段名1,字段名2,……[having 条件表达式];”

(注:1>用于在分组后对数据进行过滤,在它后面可以使用聚合函数。  2>而WHERE子句是在分组前对数据进行过滤,在它后面不可以使用聚合函数。)

5)limit分页:“select 字段名1,字段名2,…… from 表名 limit [m,]n;”

(注:1>第一个参数m是可选的,代表起始索引,若不指定,则使用默认值0,代表第一条记录。  2>第二个参数n是必选的,代表从第m+1条记录开始,取n条记录。)

 

 

 

 

 

posted @   小鳥が六花を泳ぐ  阅读(292)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
点击右上角即可分享
微信分享提示