笔记 | MySQL 查询篇

原文链接:https://mp.weixin.qq.com/s/v8qh3b771ed5pkcAxPllJw

写在前面:

从实践的角度讲,熟悉数据库的第一步大概率是查询,今天总结了数据库查询的基础知识,分享给大家~

基础部分

最简单的查询语句

SELECT 字段名1,字段名2 FROM 表名

查询全部字段

SELECT *FROM表名

查询并去重

筛选掉字段名1,字段名2都相同的数据项

SELECT DISTINCT 字段名1,字段名2FROM 表名

查询到的字段赋以新字段名

SELECT 字段名1 AS 新字段名1,字段名2 AS 新字段名2FROM 表名

通过组合逻辑查询数据表中不存在的字段

SELECT 字段名1,计算逻辑1 AS 字段名2FROM 表名

例如:

SELECT user_id,SUM(VALUE1,VALUE2) AS VALUEFROM use_info_table

添加筛选条件

SELECT 字段名1,字段名2FROM 表名WHERE 条件1 AND 条件2 OR 条件3

分组查询(常见用法)

SELECT 字段名1,COUNT(字段名2),SUM (字段名3)FROM 表名GROUP BY 字段名1

解释:按字段名1分组,在分组内对字段2计数,对字段3求和

分组查询(不常见用法)

SELECT 字段名1,字段名2FROM 表名GROUP BY 字段名1

解释:按字段名1分组,在分组内对字段2随机取值

对查询结果排序

SELECT 字段名1,字段名2FROM 表名ORDER BY 字段名1 ASC/DESC

解释:ASC表升序,DESC表降序,默认升序

对查询结果进行过滤

SELECT 字段名1,字段名2FROM 表名HAVING 条件1 AND 条件2 OR 条件3

解释:WHERE用于约束数据,在返回结果集之前起作用,HAVING是一个过滤声明,是在查询返回结果集以后对查询结果进行的过滤操作。

限制输出数据项条数

SELECT 字段名1,字段名2 FROM 表名LIMIT 条数

以上命令执行顺序

select–>where–>groupby–>having–>orderby

多表查询、子查询、UNION操作符

内连接INNERJOIN

SELECT a.字段名1,b.字段名3FROM 表1 aINNER JOIN 表2 bON a.字段名1 = b.字段名2

解释:只有当表1字段1和表2字段2都存在时才会匹配出结果

左连接LEFTJOIN

SELECT a.字段名1,b.字段名3FROM 表1 aLEFT JOIN 表2 bON a.字段名1 = b.字段名2

解释:以表1字段1为准,表2字段2无对应值时补Null

右连接RIGHTJOIN

SELECT a.字段名1,b.字段名3FROM 表1 aRIGHT JOIN 表2 bON a.字段名1 = b.字段名2

解释:以表2字段2为准,表1字段1无对应值时补Null

更多内容麻烦移步原文:

https://mp.weixin.qq.com/s/v8qh3b771ed5pkcAxPllJw

你可能感兴趣的:(笔记 | MySQL 查询篇)