javaweb09-单表数据库

一、数据库

在这里插入图片描述
主要学习前三类

二、DML

表的创建:直接利用图形化界面操作。方便快捷且主流使用。且DDL操作比较简单,此处略过。

2.1 插入

在这里插入图片描述

2.2 更新

在这里插入图片描述
如果没有where条件,则会更新整张表。

2.3 删除

在这里插入图片描述

如果使用DELETE语句,会将整行记录删除,而不是仅清空某一个字段的值。因此,确实在需要清空某一个字段的值而不删除整行记录的情况下,应该使用UPDATE语句来实现。

三、DQL

首先要记住这幅图!
在这里插入图片描述

3.1 基本语法

在这里插入图片描述

3.2 条件查询

在这里插入图片描述

这里注意in的用法:in语句的作用是用于判断一个字段的值是否在指定的值列表中,如果字段的值等于值列表中任何一个值,则返回该行数据。
如:

SELECT *
FROM users
WHERE id IN (1, 2, 3);

3.3 分组查询

在这里插入图片描述重要讨论:分组查询之后,select之后返回的字段主要包括两类,一类是分组字段,一类是聚合函数,并且where之后不能使用聚合函数。

问题:select gender,count(*) from tb_emp group by gender;为什么不可以写作select * from tb_emp group by gender

回答:在SQL中,使用GROUP BY语句对结果进行分组时,需要指定要分组的列,并且在SELECT语句中必须指定要查询的列和使用聚合函数对数据进行处理。在这种情况下,我们需要使用COUNT(*)函数对每个不同gender值进行计数,并返回结果。因此,我们无法使用SELECT *语句,而应明确指定要显示的列和进行相应的数据处理

同时注意having的用法:

having:在having之后写分组之后的过滤条件。

在这里插入图片描述

3.4 排序查询

在这里插入图片描述

例如下面代码,其中DESC是降序,ASC是升序。

SELECT name, age, salary
FROM employees
ORDER BY age DESC, salary ASC;

3.5 分页查询

在这里插入图片描述

起始索引默认为0。

例子:假设每页显示10条记录。
下面查询将返回表users中的name和age字段,并按照age字段的值降序排列结果,并且返回起始位置为10,查询行数为10,即返回第二页的数据。

SELECT name, age
FROM users
ORDER BY age DESC
LIMIT 10, 10;

四、数据库函数

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值