文章目录

  • 1. DQL简述
  • 2. 指定查询字段
  • 3. where 条件子句
  • 4. 联表查询
  • 5. 分页和排序
  • 6. 子查询
  • 7. 分组和过滤
  • 8. Select 小结

1. DQL简述

Data Query LANGUAGE : 数据查询语言

  • 所有的查询操作都用它 SELECT
  • 简单的查询,复杂的查询它都能做~
  • 数据库中最核心的语言,最重要的语句
  • 使用频率最高的语句

SELECT完整的语法

注意:[ ] 代表可选,{ } 代表必选

2. 指定查询字段

(1)查询全部的学生
语法:SELECT * FROM 表名

(2)查询指定字段
语法:SELECT 字段 FROM 表名

(3)别名,给结果起一个名字
AS 可以给字段起别名,也可以给表起别名
语法:SELECT 字段1 AS 别名1 ,字段2 AS 别名2 FROM 表名 AS 别名

(4)函数 Concat(a,b)

(5)去重 distinct
作用:去除SELECT 查询出来的结果中重复的数据,重复的数据只显示一条

  • 查询全部的考试成绩
  • 查询有哪些同学参加了考试
  • 发现重复数据,去重

(6)数据库的列 (表达式)

  • 查询系统版本 (函数)
  • 用来计算 (表达式)
  • 查询自增的步长 (变量)
  • 学员考试成绩 + 1分查看


注意
数据库中的表达式: 文本值,列,Null,函数,计算表达式,系统变量….
select 表达式 from 表

3. where 条件子句

作用:检索数据中 符合条件 的值
搜索的条件由一个或者多个表达式组成!结果 布尔值
(1)逻辑运算符

尽量使用英文字母

  • 查询考试成绩在 95~100 分之间
  • 模糊查询(区间)
  • 除了1000号学生之外的同学的成绩

(2)模糊查询 : 比较运算符

  • 查询姓刘的同学 ,与like结合 %(代表0到任意个字符)

  • 查询姓刘的同学, _(一个字符) 名字后面只有一个字的

  • 查询姓刘的同学, __(一个字符) 名字后面只有两个字的

  • 查询名字中间有嘉字的同学 %嘉%

  • 查询 1001,1002,1003号学员

  • 查询在安徽的学生

  • 查询地址为空的学生 null ’ ’

  • 查询有出生日期的同学 不为空

4. 联表查询

  • JOIN 对比

  • 三者区别

  • 练习一

查询参加了考试的同学:学号,姓名,科目编号,分数
思路 ① 分析需求,分析查询的字段来自哪些表,(连接查询)
②确定使用哪种连接查询? 7种
③确定交叉点(这两个表中哪个数据是相同的)
④判断的条件 : 学生表的中 studentNo = 成绩表 studentNo

  • 练习二

查询了参加考试的同学信息: 学号,学生姓名,科目名,分数
思路①分析需求,分析查询的字段来自哪些表, student、result、subject(连接查询)
② 确定使用哪种连接查询? 7种
③确定交叉点(这两个表中哪个数据是相同的)
④判断的条件 : 学生表的中 studentNo = 成绩表 studentNo

总结:我要查询哪些数据 select …
FROM 表 从哪几个表中查
XXX Join 连接的表
on 交叉条件
假设存在一种多张表查询,慢慢来,先查询两张表然后再慢慢增加

5. 分页和排序

(1)排序

  • 升序 ASC , 降序DESC
  • ORDER BY 通过哪个字段排序,怎么排
  • 练习:查询的结果根据 成绩降序 排序

(2)分页
分页原因:缓解数据库压力,给人的体验更好, 瀑布流
语法: limit 起始值,页面的大小
第N页 limit(n-1)* pageSize,pageSize
(n-1)* pageSize:起始值
pageSize:页面大小
n :当前页
数据总数/页面大小 = 总页数

6. 子查询

本质 : 在where语句中嵌套一个子查询语句

  • 练习一:查询 数据库结构-1 的所有考试结果(学号,科目编号,成绩),降序排列
    方式一: 使用连接查询

    方式二: 使用子查询(由里及外)

  • 练习二:查询课程为 高等数学-2 且分数不小于 80 的同学的学号和姓名
    方式一:使用连接查询

    方式二:使用子查询(由里及外)

7. 分组和过滤

核心: 根据不同的课程分组
GROUP BY…
HAVING …

练习:查询不同课程的平均分,最高分,最低分,平均分大于80

8. Select 小结

MySQL(二)——DQL数据查询语言相关推荐

  1. Mysql数据库——DQL数据查询语言

    DQL数据查询语言 基本查询 条件查询 聚合函数 分组查询 排序查询 分页查询 执行顺序 实例 基本查询 条件查询 聚合函数 分组查询 排序查询 分页查询 案例练习 小结 DQL,数据查询语言,用来查 ...

  2. MySQl数据库————DQL数据查询语言

    系列文章目录 文章目录 系列文章目录 前言 一.DQL 一.DQL数据查询语言 二.DQL单表查询 1.基本条件查询 2.多条件查询 3.范围查找 4.集合范围类查找 5.字符串模糊匹配 6.空值查询 ...

  3. 数据库DQL数据查询语言

    文章目录 DQL数据查询语言 1.基础查询:SELECT子句和FROM子句 1.1 语法: 2. WHERE子句 2.1 使用AND"与"和OR"或"来连接多个 ...

  4. DQL -- 数据查询语言

    DQL -- 数据查询语言 查询不会修改数据库表记录! 一. 基本查询 1. 字段(列)控制 1) 查询所有列 SELECT * FROM 表名; SELECT * FROM emp; --> ...

  5. DQL数据查询语言--select的巧妙用法

    DQL数据查询语言–select的巧妙用法 今天是周六,赶着这冬日的太阳,记下生活!记下经验! 巧用SQL的数据查询语句Select可以大大提高查询效率,针对测试开发都非常有用. DQL数据查询语言- ...

  6. 数据库 MySQL 中 DQL 数据库查询语言(特别重要)

    DQL 数据库查询语言 1.简单查询 2.where 条件字句 3.联表查询 4.自连接查询 5.分页和排序 6.子查询 7.MySQL 函数 8.select 小结 DQL(Data Query L ...

  7. 2022-08-16 DQL数据查询语言

    DQL数据库查询语言 重点,DQL是我们每天都要接触编写最多也是最难的SQL,该语言用来查询记录,不会修改数据库和表结构. 构建数据库 创建一张student表: DROP TABLE IF EXIS ...

  8. SQL 复习二(数据查询语言)

    1.1 数据查询语言 DQL就是数据查询语言,数据库执行DQL语句不会对数据进行改变,而是让数据库发送结果集给客户端. 语法: SELECT selection_list /*要查询的列名称*/ FR ...

  9. MySQL→数据库、启动连接数据库、SQL→DDL数据定义语言及数据类型、DML数据操作语言、DQL数据查询语言、数据库约束→主键、唯一、非空、默认、外键、SQL、三大范式及一多关系、视图、内外连接

    MySQL连接退出命令 mysql –uroot -proot mysql –h127.0.0.1 –uroot -proot mysql --host=localhost --user=root - ...

最新文章

  1. **极光推送PHP服务器端推送移动设备消息(Jpush V2 api)
  2. 《C程序设计伴侣》诞生记
  3. 不挂载 组件渲染_让你的 React 组件性能跑得再快一点「实践」
  4. Ubuntu查看系统任务管理器(cpu+内存资源占用)+查看虚拟机分配核心数
  5. ARM学习笔记7——乘法指令
  6. delphi 参数化sql
  7. 她是法国数学界的“花木兰”,高斯的“救命恩人”
  8. 重磅!央行启动企业信息联网核查系统
  9. linux系统显卡驱动下载官网,NVIDIA显卡Linux系统驱动313.09版下载
  10. 银盛支付银账通进件接口php demo 签名 上传图片 进件 获取token 超简洁sdk
  11. 【APP自动化测试环境】安装jdk---安装android SDK---安装appium---安装node.js---安装夜神模拟器--调试appium连接夜神模拟器
  12. poj 1061青蛙的约会
  13. 复旦大学和中科大 计算机,强基计划遇冷?!复旦大学和中科大都没招满...
  14. Prometheus -Grafana部署及部署告警
  15. 三国杀开源系列之一104@365
  16. JS实现QQ面板-拖曳效果
  17. ubuntu16.04安装digits
  18. virtual方法和abstract方法的使用(轉載)
  19. 小程序开发的5个框架
  20. 班费管理系统c语言报告,班费管理系统课程设计报告.doc

热门文章

  1. BZOJ-1003-物流运输trans-ZJOI2006-SPFA+DP
  2. [codevs 1916] 负载平衡问题
  3. 洛谷 [SDOI2009]晨跑
  4. 登录页面html代码_【网络自动化平台开发】—— 登录组件
  5. r语言逻辑向量相加_R语言基础教程——第3章:数据结构——向量
  6. excelutil java_JAVA实现Excel的读取--ExcelUtil工具类
  7. vc下c语言网络编程,用VC编写C/S消息传送程序
  8. php 获取坐标api,怎么获取百度坐标api返回的json格式字符串或对象呢
  9. void * 指针和const 指针
  10. 分布式监控系统开发【day38】:监控数据如何画图(九)