查询关键字 select
select 字段列表
from 表名
[where 条件表达式1]
[group by 字段1 [having 条件表达式2]]
[order by 字段2 [ASC|DESC]] #最常规的查询结构
sql查询语句是数据库最频繁的日常操作,根据使用条件分为以下几类:
一、条件查询where语句
select * from 表名 where 查询条件
#例
select * from test where id = 1;
二、运算符
运算符 |
|
= |
等于 |
<> 或者 != |
不等于 |
> |
大于 |
< |
小于 |
>= |
大于等于 |
<= |
小于等于 |
and |
且 |
or |
或 |
not in |
不存在 |
in |
存在 |
between and |
介于 |
select * from table_name where id%2<>0; #查询id为奇数的行
三、模糊查询 like
通配符 |
% |
% |
匹配一个或多个 |
_ |
仅匹配一个 |
[charlist]% |
分别以每个字母开头的 |
[^charlist]% 或者[!charlist]% |
不包含这些字母开头的 |
%r% |
包含r的字符串 |
r% |
以r开头的字符串 |
%r |
以r结尾的字符串 |
select nane from table_name where name like = 'Z%';
四、连接查询 join
常用函数 |
图例 |
inner join |
|
left join |
|
right join |
|
full join |
|
select a.id,b.name from table_name1 a inner join table_name2 b on a.id=b.id;
五、聚合查询 group by语句
常用函数 |
功能 |
count() |
返回列有多少行 |
max() |
求最大值 |
min() |
求最小值 |
avg() |
求平均值 |
sum() |
求和 |
select title_id,count(distinct title_name) as num from table_name;
#group by title_name 按title_name进行分类统计
#distinct 返回唯一值
#as 重命名
六、对查询结果排序,分页
关键字 |
功能 |
order by |
desc 降序;asc 升序,默认 |
limit offset |
分页查询 |
select * from table_name order by id desc; #对结果集以id降序排序
select * from table_name limit 1,2; #第一个参数表示要跳过的数量,第二个参数表示要取得数量
select * from table_name limit 1 offset 2 #limit 要取得数;offset 跳过的数
七、其他关键字,内置函数
having