这篇博客将介绍 DQL 即数据查询语言的基础查询、条件查询、排序查询和分组查询。
基础查询
语法:
SELECT 要查询的东西
[FROM 表名];
类似于Java中 : System.out.println(要打印的东西)
;
特点:
- 通过select查询完的结果 ,是一个虚拟的表格,不是真实存在。
- 要查询的东西可以是常量值、可以是表达式、可以是字段、可以是函数。
条件查询
条件查询:根据条件过滤原始表的数据,查询到想要的数据。
语法
SELECT
要查询的字段 | 表达式 | 常量值 | 函数
FROM
表
WHERE
筛选条件;
筛选条件的分类有:
-
条件表达式
示例:salary>10000
条件运算符:
> < >= <= = != <>
-
逻辑表达式
示例:salary>10000 && salary<20000
逻辑运算符:
and(&&)
:两个条件如果同时成立,结果为true
,否则为false
or(||)
:两个条件只要有一个成立,结果为true
,否则为false
not(!)
:如果条件成立,则not后为false
,否则为true
-
模糊查询
示例:las_name like 'a%'
排序查询
语法:
select
要查询的东西
from
表
where
条件
order by 排序的字段|表达式|函数|别名 【asc|desc】
asc
为升序,desc
为降序,默认情况是在 asc
。
分组查询
语法:
select 查询的字段,分组函数
from 表
group by 分组的字段
特点:
- 可以按单个字段分组
- 和分组函数一同查询的字段最好是分组后的字段
- 分组筛选 having 函数
- 可以按多个字段分组,字段之间用逗号隔开
- 可以支持排序
- having后可以支持别名
针对的表 | 位置 | 关键字 | |
---|---|---|---|
分组前删选 | 原始表 | group by 的前面 | where |
分组后删选 | 分组后的结果集 | group by 的后面 | having |