数据库(2)

本文详细介绍了数据库操作中的增删改查方法,包括insert语句的使用、指定列插入、批量插入、日期书写规则,以及查询技巧如全列查询、指定列查询、表达式查询、去重查询和排序(包括升序和降序)。
摘要由CSDN通过智能技术生成

前面介绍了数据库的一些基本操作,这里主要介绍对数据库的增删改查.使用下列操作时要注意已经选中了数据库,并且进行操作的表要确实存在.

1.给表中新增数据:insert into 表名 values (值,值,值,...);其中into可以省略,括号中的值的数量,类型,含义要注意与标头的结构匹配.

上图所示为向一个叫students的表中新增两条数据,第二次新增时省略了into依旧插入成功,但为了代码的可读性,每次新增时不要省略into.要注意插入的数据类型和顺序与表头相匹配,否则会报错.

2.指定列插入:insert into 表名 (列名,列名,...) values (值,值,值,...);

这里的列名就不需要和表头信息一致,顺序也没有要求,但是要确保写的列名是存在的.

3.一次性插入多行:insert into 表名 values (值,值,值,...),(值,值,值,...);可以一次插入多条信息,比多次插入一条信息更加高效.当然,也可以使用  insert into 表名 (列,列,列,...) values (值,值,值,...),(值,值,值,...);插入多条指定行.

4.特别的插入日期时需要按照下列书写方法书写.

4.全列查询  select*from 表名;能够查询出表中所有列所有行

全列查询:select * from 表名 虽然能够显示表中的所有行列信息,但是使用该操作时服务器就会进行大量的IO操作,同时把得到的结果通过网络返回,触发大量的网络IO操作.硬盘,网卡,同一时刻能够处理的数据量是有限的,进行了select*就可能把硬盘/网卡的带宽给吃满了.此时其他普通用户针对数据库进行的操作,就可能卡住了.

5.指定列查询 select 列名,列名,列名,...from 表名;可以查询指定列的信息.

6.表达式查询:查询的结果不仅仅是列,而是可以把列带到表达式中进行计算.为了方便展示,先创建一个成绩表如下.

查询的时候把列带入进行计算:

需要注意的是,上述的表达式查询,只是针对服务器响应得到的临时结果进行了计算,不影响硬盘上存储的数据本体,硬盘上存储的仍然是插入的数据,未发生改变.

上述查询过程中,表达式相加的名字就成了临时表的表头,观察起来不太直观,因此可以给临时表的列起名字.

7.去重查询:select distinct 列名 from 表名;

这里发现最后两行有重复的成绩,可以进行去重查询.

发现两列中某一行有重复时,也可以使用 distinct 去除重复的.

8.带有排序的查询,只使用select进行排序默认是无序的,要想使查询的结果有序,需要使用 order by 语句,完整的语法如下: select 列名,列名,... from 表名 order by 列名/表达式 注意这里的排序默认是升序的,如果想要降序排列,需要在最后加上 desc 关键字.

以下是未排序的表的所有列所有行.

接下来按照语文成绩排序如下:

可以看出该排序是按照语文成绩升序排列的.接下来按照数学成绩降序排列

当然 order by 后面的表达式可以不是select选出的.

order by 也是可以指定多个列排序 : select 列名,列名,...from 表名 order by 列名 desc,列名 desc,...

  • 11
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值