【JavaWeb】Day38.MySQL概述——数据库设计-DQL(一)

数据库设计------DQL

介绍

DQL英文全称是Data Query Language(数据查询语言),用来查询数据库表中的记录。

查询关键字:SELECT

查询操作是所有SQL语句当中最为常见,也是最为重要的操作。在一个正常的业务系统中,查询操作的使用频次是要远高于增删改操作的。当我们打开某个网站或APP所看到的展示信息,都是通过从数据库中查询得到的,而在这个查询过程中,还会涉及到条件、排序、分页等操作。

语法

DQL查询语句,语法结构如下:

基本查询

查询多个字段

select 字段1, 字段2, 字段3 from 表名;

案例1:查询指定字段 name,entrydate并返回

select name,entrydate from tb_emp;

查询所有字段(通配符)

select * from 表名;

案例2:查询返回所有字段

select * from tb_emp;

`*`号代表查询所有字段,在实际开发中尽量少用(不直观)

设置别名

select 字段1 as 别名1 , 字段2 as 别名2 from 表名;

案例3:查询所有员工的 name,entrydate,并起别名(姓名、入职日期)

使用''或""包含

select name AS '姓 名', entrydate AS '入职日期' from tb_emp;

select name AS "姓名", entrydate AS "入职日期" from tb_emp;

去除重复记录

select distinct 字段列表 from 表名;

案例4:查询已有的员工关联了哪几种职位(不要重复)

select distinct job from tb_emp;

条件查询

语法:

select 字段列表 from 表名 where 条件列表 ; -- 条件列表:意味着可以有多个条件

学习条件查询就是学习条件的构建方式,而在SQL语句当中构造条件的运算符分为两类:

  • 比较运算符
  • 逻辑运算符

案例1:查询 姓名 为 杨逍 的员工

案例2:查询 id小于等于5 的员工信息

select id, username, password, name, gender, image, job, entrydate, create_time, update_time from tb_emp where id <=5;

案例3:查询 没有分配职位 的员工信息

select id, username, password, name, gender, image, job, entrydate, create_time, update_time from tb_emp where job is null ;

注意:查询为NULL的数据时,不能使用 `= null`

案例4:查询 有职位 的员工信息

案例5:查询 密码不等于 '123456' 的员工信息

案例6:查询 入职日期 在 '2000-01-01' (包含) 到 '2010-01-01'(包含) 之间的员工信息

案例7:查询 入职时间 在 '2000-01-01' (包含) 到 '2010-01-01'(包含) 之间 且 性别为女 的员工信息

案例8:查询 职位是 2 (讲师), 3 (学工主管), 4 (教研主管) 的员工信息

案例9:查询 姓名 为两个字的员工信息

案例10:查询 姓 '张' 的员工信息

相关推荐
AllData公司负责人10 小时前
AI大模型数据开发底座系列说明书,AllData集成Chat2DB开源项目建设AI 数据库分析底座,涵盖AI 洞察/对话SQL/智能视图!
数据库·人工智能·sql·开源·ai 洞察·对话sql
xixingzhe211 小时前
数据库备份的分类与特点
数据库
时间的拾荒人14 小时前
Redis 主从复制详解:配置实操 + 原理机制
数据库·redis·面试
隔窗听雨眠15 小时前
MySQL三表JOIN执行内核与优化器决策机制
数据库·mysql·sql优化
Decay__16 小时前
SQLServer 索引与 SQL 优化 —— 聚集索引、非聚集索引、覆盖索引、碎片维护与执行计划
运维·数据库·sql·mysql·架构
笃行35017 小时前
【金仓数据库产品体验官】订单增量同步实战:MERGE、OUTPUT 与 IDENTITY 的兼容验证
数据库
星恒随风20 小时前
MySQL 从零入门(六):复合查询详解——多表查询、自连接、子查询与 UNION
linux·服务器·数据库·mysql
无奈笑天下21 小时前
银河麒麟上lsblk命令教程详解
linux·运维·服务器·数据库
xiaoye-duck1 天前
《C++ 项目:手写大模型接入 SDK》会话模块整合:内存 SessionManager 与 DataManager 持久化联动
开发语言·数据库·c++·语言模型
AllData公司负责人1 天前
AI大模型数据开发底座系列说明书:AllData集成DB-GPT开源项目建设 AI 多模态分析底座,涵盖模态解析/智能大屏/MCP 扩展!
大数据·数据库·人工智能·gpt·数据采集·数据接入·模态解析