#数据库查询操作
#1、简单查询
select
FIELDS... 列筛选
from
TABLENAME
where
... 原始数据行筛选
group by
FIELDS... 左1主,其右依次为辅,以逗号分隔
having
... 分组结果二次筛选
order by
[FIELD ASC/DESC]...
limit 当前页码: pageNo ,每页的数据量: pageSize ,总页数: total
(pageNo-1)*pageSize,pageSize
#聚合函数: avg,min,max,count,sum
#列别名:select id,count(1) 【stuNum】
#分组查询【可以】出现再字段列表中的字段:参与分组的字段和聚合函数
#left(stuName,1)
#2、复杂查询
#子查询
select
可以出现子查询
from
可以出现子查询
where
可以出现子查询
group by
不可以
having
可以出现子查询
order by
不可以
limit
不可以
#合并查询
select
FIELDS
from
TABLE1,...,TABLEN
...
#连接查询(数据多的从表放前面)
内连接
select
FIELDS
from
TABLE A
inner join
TABLE B
on
A.fk=B.pk
外连接
左外
右外
全外
#复杂查询解题思路
#1、拆句
#从左向后找句子成分中的定语和其修饰语
按照顺序分别列出其定语,最后一个是修饰语
#2、分析所有的成分
#根据已知条件确定查询类型【确定查询类型,聚合查询】
#分析查询涉及的表数据和表关系
#3、从左向右确定成分的SQL形式【表或查询语句】
# 确定存在于主结构中的方式:
合并查询(作为from之后的一个部分),
连接查询(作为xxx join之后的一部分),
作为查询条件(in/all/any/some子句中)
# 确定该部分的层次
mysql-select
最新推荐文章于 2024-07-15 15:01:56 发布