数据库学习——Mysql语言_DDL_DML_DQl

本文介绍了SQL的插入(insert)、删除(delete)、更新(update)等基础操作,包括DDL(DomainDefinitionLanguage,数据定义语言)和DML(DataManipulationLanguage,数据操作语言)实例,以及分组、聚合、结果排序和分页的使用方法。
摘要由CSDN通过智能技术生成

目录

1.增加(insert)

2.删除(Delete)

3.数据更新(update)

 4.注意事项

5.DDL和DML语句练习

6.分组聚合

7.结果排序 

8.结果分页限制


1.增加(insert)

基础语法:

insert into 表 values(值1,值2,...)

写法一:

#给表student的id列增加三个值

insert into student (id) values(1),(2),(3);

写法二:

#给表student的id,name,age列增加三个值

insert into student (id,name,age) values(4,'周杰伦',31),(5,'林觉姐',33);

2.删除(Delete)

 基础语法:

delete from 表 [where 条件判断]

 写法:

#删除age大于33的数据

delete from student where age>33;

3.数据更新(update)

基础语法:

update 表 set 列=值 [where 条件判断]

 写法:

#修改id为1的name 为陈一讯

update student set name = '陈一讯' where id = 1;

 4.注意事项

  1. 字符串出现再sql语句中,必须要用单引号包围起来;
  2. 每一条sql语句都要以分号;结尾。

5.DDL和DML语句练习

要求:

解答:

创建一个新的数据库的语句:

create database 数据库名称;

create database xjx231106;

 进入数据库:

use 数据库名称;

use xjx231106;

 创建一个新表:

CREATE TABLE  [IF NOT EXISTS] `表名` (
    `字段名` 列类型 [属性] [索引] [注释],
    `字段名` 列类型 [属性] [索引] [注释],
    .......
    `字段名` 列类型 [属性] [索引] [注释]
) [表类型] [字符集设置] [注释]

create table student(
	id int,
	name varchar(25),
	age int,
	gender varchar(10)
);

 批量插入数据:

insert into student(id,name,age,gender) 
values(1,'周杰伦',31,'男'),
(2,'王力宏',33,'男'),
(3,'蔡依林',35,'女'),
(4,'林志玲',33,'男'),
(5,'刘德华',35,'男'),
(6,'张大山',31,'男'),
(7,'刘志龙',22,'男'),
(8,'王笑笑',28,'女'),
(9,'章一枚',36,'女'),
(10,'王一倩',36,'男'),
(11,'陈奕迅',24,'男'),
(12,'张晓光',22,'女'),
(13,'李大霄',23,'男'),
(14,'吕田天',25,'女'),
(15,'增月月',28,'男'),
(16,'刘家辉',38,'男'),
(17,'项羽反',31,'女'),
(18,'刘德强',31,'男'),
(19,'王强强',3,'男'),
(20,'林智慧',31,'女');

结果:

6.分组聚合

基本语法:

select 字段|聚合函数 from 表 [where 条件] group by 列

聚合函数有:

  1. sum(列) -求和
  2. avg(列) -求平均值
  3. min(列) -求最小值
  4. max(列) -求最大值
  5. count(列|*) -求数量 

注意事项:

group by 中出现了哪个列,哪个列才能出现在select中的非聚合; 

样例:

select avg(age) from student group by gender;

select gender,avg(age) from student group by gender;

7.结果排序 

 基础语法:

select 列|聚合函数|* from 表

where ...

group by ...

order by ... [asc|desc]

筛选年龄大于20的学生的全部信息,并且按照年龄进行升序排列 

select * from student where age>20 order by age asc;

8.结果分页限制

 基本语法:

select 列|聚合函数|* from 表

where ...

group by ...

order by ... [asc|desc]

limit n[,m]

 输出student表的前五条数据

select * from student limit 5;

 

 从student表的第十条开始往后取五条

select * from student limit 10,5;

 综合使用:(关键字的顺序有讲究)

挑选出年龄大于20,出现次数最多的年龄数值

select age,count(*) from student 
where age>20
group by age
order by age
limit 3;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hooray11

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值