当前位置: 首页 > news >正文

JavaWeb开发学习笔记--MySQL

MySQL-DQL

基本语法:

select
    字段列表
from
    表名列表
where
    条件列表
group by
    分组字段列表
having
    分组后条件列表
order by
    排序字段列表
limit
    分页参数

基本查询

关键字:SELECT

  • 查询多个字段:select 字段1,字段2,字段3 from 表名;
  • 查询所有字段(通配符):select * from 表名;
  • 设置别名:select 字段1 [as 别名1],字段2 [as 别名2] from 表名;

其中as关键字可去掉,注意别名中如果有特殊符号或者空格,需要用引号引起来 

  • 去除重复记录:select distinct 字段列表 from 表名; 

条件查询

 select 字段列表 from 表名 where 条件列表;

比较运算符功能
>大于等于
>=大于等于
<小于
<=小于等于
=等于
<>或!=不等于
between...and...在某个范围之内(含最小、最大值)
in(...)在in之后的列表中的值,多选一
like 占位符模糊匹配(_匹配单个字符,%匹配任意个字符)
in null是null
逻辑运算符功能
and或&&并且(多个条件同时成立)
or 或 ||或者(多个条件任意一个成立)
not 或 |非,不是

分组查询

聚合函数

将一列数据作为一个整体,进行纵向计算

select 聚合函数(字段列表) from 表名;

函数功能
count 统计数量
max最大值
min最小值
avg平均值
sum求和

注意:null值不参与所有聚合函数运算,

统计数据可以使用:count(*) count(字段) count (常量),推荐使用count(*)

select 字段列表 from 表名 [where 条件] group by 分组族字段名 [having 分组后过滤条件];
select gender,count(*) from tb_emp group by gender;

where与having的区别

  • 执行时机不同:where是分组之前进行过滤,不满足where条件,不参与分组;而having是分组之后对结果进行过滤,
  • 判断条件不同:where不能对聚合函数进行判断,having可以。

分组之后,查询的字段一般为聚合函数和分组字段,查询其他字段无任何意义

执行顺序:where>聚合函数>having 

排序查询

select 字段列表 from 表名 [where 条件列表][group by 分组字段]order by 字段1 排序方式1,字段2 排序方式2...

ASC:升序 (默认值)

DESC:降序

-- 根据入职时间对员工进行升序排序-asc
select * from tb_emp order by ertrydate asc;-- 根据入职时间对员工进行降序排序-desc
select * from tb_emp order by ertrydate desc;-- 根据入职时间对员工进行升序排序,入职时间相同,再按照更新时间进行降序排序
select * from tb_emp order by ertrydate , update_time desc;

分页查询

select 字段列表 from 表名 limit 起始索引,查询记录数;
-- 从起始索引0开始查询员工数据,每页展示5条记录
select * from tb_emp limit 0,5;-- 查询第1页员工数据,每页展示5条记录
select * from tb_emp limit 0,5;-- 查询第2页员工数据,每页展示5条记录
select * from tb_emp limit 5,5;-- 查询第3页员工数据,每页展示5条记录
select * from tb_emp limit 10,5;

起始索引的计算公式:(页码-1) * 每页展示记录数

注意:分页查询是数据库的方言,不同数据库有不同表现,MySQL是LIMIT;

如果查询的是第一页的数据,起始索引可以省略,直接简写为limit 10;

http://www.lryc.cn/news/524278.html

相关文章:

  • 抖音小程序一键获取手机号
  • iconfont等图标托管网站上传svg显示未轮廓化解决办法
  • 2008-2020年各省城镇登记失业率数据
  • Linux——信号量和(环形队列消费者模型)
  • 【JOIN】关键字在MySql中的详细使用
  • 渗透测试--攻击常见的Web应用
  • window系统annaconda中同时安装paddle和pytorch环境
  • python-leetcode-简化路径
  • 浅谈 PID 控制算法
  • ailx10的专栏电子书(2022版)
  • WPS按双字段拆分工作表到独立工作簿-Excel易用宝
  • C++ Qt练习项目 日期时间数据 未完待续
  • vim文本编辑器
  • 产品经理面试题总结2025【其一】
  • 资料03:【TODOS案例】微信小程序开发bilibili
  • 玉米植物结构受乙烯生物合成基因 ZmACS7 的调控
  • C#语言的函数实现
  • 1.6 从 GPT-1 到 GPT-3.5:一路的风云变幻
  • TypeScript - 利用GPT辅助学习
  • VMware虚拟机迁移到阿里云
  • 【STM32-学习笔记-15-】MAX7219点阵屏模块
  • 高并发内存池_CentralCache(中心缓存)和PageCache(页缓存)申请内存的设计
  • elementUI Table组件实现表头吸顶效果
  • 语言模型的价值定位与技术突破:从信息处理到创新认知
  • 微信小程序使用上拉加载onReachBottom。页面拖不动。一直无法触发上拉的事件。
  • Spring Boot 快速创建项目
  • kafka学习笔记5 PLAIN认证——筑梦之路
  • 直驱式风电储能制氢仿真模型matlab/simulink
  • excel批量提取批注
  • 高性能PCIE硬件加密卡:满足大数据时代的安全需求