聚合排序、数据更新

一、聚合排序

1、对表进行聚合查询

count/sum/avg/max/min

count(*),count 函数的独有用法,注意区别;

聚合函数,指用于汇总的函数。

2、对表进行分组
group by 

  对于 GROUP BY 聚合操作,如果在 SELECT 中的列、HAVING 或者 ORDER BY 子句的列,没有在GROUP BY中出现,那么这个SQL是不合法的

以下链接,该博主有详细的解释,非常实用,方便我们入门小白快速学习。推荐学习。

GROUP BY 后 SELECT 列的限制:which is not functionally dependent on columns in GROUP BY clause_陈晨辰呀的博客-CSDN博客

3、为聚合结果指定条件

HAVING 子句,执行顺序在GROUP BY之后,用于对分组结果设定条件

理解where 与HAVING子句条件的区别

4、对查询结果进行排序

order by

写在 select 语句德末尾,以列为单位指定排序,允许使用别名。

order  by     desc;

order by       asc;

Null作为不确定项,排在序列的最后,或最前方。

可以使用不再select 语句中出现的列,可以使用聚合函数。

order by count.

二、数据更新

1、数据插入insert

用于向表中插入行

insert into tank_info (product_id,product_namr,product_numb,atomnum,line) values(119,"pilot",16949,001,"A");

列清单与值清单对应,否则会出错,注意数据类型;

练习一次插入多行;

insert into ...select....;

自行练习一段代码

select * from tank_info;

select max(product_id) from tank_info;

select product_namr from tank_info group by product_namr;

insert into tank_info (product_id,product_namr,product_numb,atomnum,line) values(119,"pilot",16949,001,"A");

create table tankcopy(name varchar(100),num varchar(100));

insert into tankcopy (name,num)

select product_namr,sum(product_numb)

from tank_info

group by product_namr;

select * from tankcopy ;

2、数据删除delete

drop table;

delete from 表名;

delete 执行的对象是行,不是表,注意与drop的区别;

delete from ** where condition;

特殊:

truncate 表名;

/*删除整张表中的数据,运行速度高于delete*/

3、数据更新update

update 属于DML语句。

update tankcopy

set num = '0001'

where num is null;

更新多列数据

注意清单化更新(类似于数组)或间隔逗号语句更新的区别;

4、其他笔记

本段转自其他博主,仅作个人学习用。

DDL和DML之间的主要区别在于:DDL有助于更改数据库的结构,而DML有助于管理数据库中的数据。

本质区别

DDL代表数据定义语言(Data Definition Language),是一种有助于创建数据库模式的SQL命令。而DML代表数据操作语言(Data Manipulation Language),是一种有助于检索和管理关系数据库中数据的SQL命令。

命令上的区别

DDL中常用的命令有:create,drop,alter,truncate和rename等等。而DML中常用的命令有:insert,update,delete和select等等。

影响上的区别

DDL命令会影响整个数据库或表,而DML命令会影响表中的一个或多个记录。

回滚上的区别

带有DDL命令的SQL语句是自动提交的,其更改将永久保存在数据库中,无法回滚。带有DML命令的SQL语句不会自动提交,其造成的变化不是永久性的,可以回滚。
————————————————
版权声明:本文为CSDN博主「做人,最重要的就是开心嘛」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/troubleshooter/article/details/121809847

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值