mysql单表查询·3

准备好表

sql 复制代码
create table product(
    id int primary key,
    name varchar(32),
    price double,
    category varchar(32)
);
# 插入数据
INSERT INTO product(id,name,price,category) VALUES(1,'联想',5000,'c001');
INSERT INTO product(id,name,price,category) VALUES(2,'海尔',3000,'c001');
INSERT INTO product(id,name,price,category) VALUES(3,'雷神',5000,'c001');
INSERT INTO product(id,name,price,category) VALUES(4,'杰克琼斯',800,'c002');
INSERT INTO product(id,name,price,category) VALUES(5,'真维斯',200,'c002');
INSERT INTO product(id,name,price,category) VALUES(6,'花花公子',440,'c002');
INSERT INTO product(id,name,price,category) VALUES(7,'劲霸',2000,'c002');
INSERT INTO product(id,name,price,category) VALUES(8,'香奈儿',800,'c003');
INSERT INTO product(id,name,price,category) VALUES(9,'相宜本草',200,'c003');
INSERT INTO product(id,name,price,category) VALUES(10,'面霸',5,'c003');
INSERT INTO product(id,name,price,category) VALUES(11,'好想你枣',56,'c004');
INSERT INTO product(id,name,price,category) VALUES(12,'香飘飘奶茶',1,'c005');
INSERT INTO product(id,name,price,category) VALUES(13,'海澜之家',1,'c002');

1.简单查询

知识点

简单查询关键字:select 、from

用法:select [distinct] 字段名 [as 别名] ... from 表名;

distinct:给修饰字段去重

as:给表或字段起别名

示例

2.条件查询

知识点

条件查询关键字:where

条件查询基础用法:select 字段名 from 表名 where 条件;

  • 比较运算符:>,<,>=,<=,!=(<>)
  • 逻辑运算符:and,or,not
  • 范围查询:between x and y:x到y的连续范围 in(x,y)x或者y
  • 模糊查询:like:模糊查询关键字 %:0个或多个字符 _:1个字符
  • 空判断:is null:判断为空 is not null:判断不为空

示例

3.排序查询

知识点

排序查询关键字:order by

排序查询用法格式:select 字段名 from 表名 order by 排序字段名 asc|desc

  • asc:升序,默认是升序
  • desc:降序

注意:如果order by后面跟了多个排序字段名,先按照前面的字段排序,如果相同在按照后面的字段排序

示例

4.聚合排序

知识点

聚合查询函数:count()统计,sum()求和,avg()平均,max()最大值,min()最小值

聚合查询用法格式:select 聚合函数 from 表名;

注意:

  • 默认一个表就是一个大的分组
  • 聚合函数又名统计函数,也叫分组函数
  • 聚合函数(字段名)会忽略null值,而count(*)不会忽略null值

示例

5.分组查询

知识点

分组查询关键字:group by

分组查询用法格式:select 分组字段名,聚合函数(字段名) from 表名 group by 分组字段名;

分组查询+条件格式:select 分组字段名,聚合函数(字段名) from 表名 [where 非聚合条件] group by 分组字段名 [having 聚合条件];

注意:where 只能筛选非聚合条件,having可以筛选非聚合条件和聚合条件。但是用having去筛选非聚合条件效率会降低,因此不建议用having去筛选非聚合条件

示例

6.分页查询

知识点

分页查询关键字:limit

分页查询用法格式:select 字段名 from 表名 limit x,y;

x:整数,代表查询的起始索引,默认从0开始

y:整数,代表查询的条数(每页展示的数量)

联想我们生活中见的下一页,x*y+1就是x/y+1页第一条记录索引

示例

相关推荐
Code成立25 分钟前
1、深入理解Redis线程模型
数据库·redis·bootstrap
缘友一世2 小时前
macos安装mongodb
数据库·mongodb·macos
bin91534 小时前
【EXCEL数据处理】000010 案列 EXCEL文本型和常规型转换。使用的软件是微软的Excel操作的。处理数据的目的是让数据更直观的显示出来,方便查看。
大数据·数据库·信息可视化·数据挖掘·数据分析·excel·数据可视化
Miqiuha4 小时前
lock_guard和unique_lock学习总结
java·数据库·学习
一 乐5 小时前
学籍管理平台|在线学籍管理平台系统|基于Springboot+VUE的在线学籍管理平台系统设计与实现(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·学习
Java探秘者9 小时前
Maven下载、安装与环境配置详解:从零开始搭建高效Java开发环境
java·开发语言·数据库·spring boot·spring cloud·maven·idea
2301_786964369 小时前
3、练习常用的HBase Shell命令+HBase 常用的Java API 及应用实例
java·大数据·数据库·分布式·hbase
苹果醋39 小时前
大模型实战--FastChat一行代码实现部署和各个组件详解
java·运维·spring boot·mysql·nginx
阿维的博客日记10 小时前
图文并茂解释水平分表,垂直分表,水平分库,垂直分库
数据库·分库分表