Mysql语法顺序
1. select[distinct]
2. from
3. join(如left join)
4. on
5. where
6. group by
7. having
8. union
9. order by
10. limit
# 查询 下过两个及两个以上订单的 不重复的人,按照会员注册时间倒叙,显示10条。
SELECT
group_concat( `order`.orderNumber ),
count( `order`.orderNumber ) AS orderCount,
member.fullName,
member.id
FROM
`order`
INNER JOIN member ON member.id = `order`.memberId
WHERE
`order`.orderState = 'processed'
GROUP BY
`order`.memberId
HAVING
orderCount > 1
# 如果有union的话,在这里操作
ORDER BY
`member`.id DESC
LIMIT 10
Mysql执行顺序
———————— 先知道有哪几个表关联,关联条件是什么
1 from
2. on
3. join
———————— 多表关联数据太多,过滤掉一部分。
4. where ——通过where首先过滤掉一部分数据
5. group by ——将结果分组
6. having ——在分组的结果上进行条件
- select ——然后就能显示出结果。
————————-处理select结果
8. distinct ——在select的结果集里去重,
9. union ——如果有联合查询的话,在这里进行合并。
10. order by —-对最后的结果进行排序,排序并不会改变结果集的大小。
11. limit —-最后决定取多少条数据,从哪里开始截取