【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:查询 姓 '张' 的员工信息

相关推荐
z_鑫几秒前
深入理解MyBatis:collection集合封装的底层原理与实现细节
java·开发语言·数据库·spring boot·mybatis
lazy H6 分钟前
Spring Boot 连接 MySQL 失败怎么办?常见报错原因和解决方法总结
spring boot·后端·学习·mysql·spring
uoKent9 分钟前
Redis环境搭建与redis-cli基础操作
数据库·redis·缓存
倔强的石头10613 分钟前
《Kingbase护城河》——深度解密数据库行锁冲突与等待事件架构
java·数据库·架构
Omics Pro15 分钟前
中医临床决策5款大语言模型,谁主沉浮?
数据库·人工智能·机器学习·语言模型·自然语言处理·chatgpt
BomanGe1016 分钟前
NSK NH35EM 高负载法兰型直线导轨详述
服务器·网络·数据库·经验分享·规格说明书
何极光18 分钟前
MySQL 8.0详细安装教程(附下载地址)
数据库·mysql·adb
2601_9618752421 分钟前
花生十三资料网盘|百度云|下载
数据库·windows·git·svn·eclipse·github
承渊政道26 分钟前
【MySQL数据库学习】(MySQL复合查询)
数据库·学习·mysql·bash·database·数据库开发·数据库架构
Cx330❀30 分钟前
【MySQL基础】详解MySQL数据类型:底层原理、越界测试与最佳实践
linux·开发语言·数据库·c++·mysql