一、查询语句
1.DESCRIBE 语句
描述”指定表或视图中的所有列,可以帮助我们了解数据表中包含了哪些列
语法:Describe table_name;
2.SELECT 语句
查询满足条件的记录总数
语法:SELECT COUNT(“字段名”) FROM “表格名”;
- SELECT COUNT(*) FROM "表格名”; ——计算数据总数
- SELECT COUNT(“字段名”) FROM “表格名”;——计算变量 (去除了缺失值)
- SELECT COUNT(Distinct (“字段名”) ) FROM “表格名”;——计算去重后的变量
3.MIN/MAX/SUM/AVG 函数
最小值min,最大值max,平均值avg以及求和sum
语法:SELECT min(“字段名”),max(“字段名”),avg(“字段名”),sum(“字段名”),count(“字段名”) FROM “表格名”;
# 举例
#描述销售表中的数据信息
1.DESCRIBE sales;
#找出销售产品的配送城市(只显示前10行)
2.SELECT delivery_city FROM sales LIMIT 10;
#统计配送城市数量,去除重复记录
3.SELECT COUNT(DISTINCT delivery_city) FROM sales;
#找出每笔销售记录销售数量的最小值和最大值,并求销售数量
的平均值
4.SELECT MIN(quant),MAX(quant), AVG(quant) FROM sales;
二、过滤语句
1.WHERE语句
WHERE语句是SQL语句中的筛选语句。它的主要功能是对数据按照特定的条件去进行筛选,一般位置在FROM的后面。
语法:SELECT 列名称 FROM 表名称 WHERE 列运算符值
2.操作符 — 很重要!用起来是关键。
操作符是精确匹配
除了等号之外,我们还可以使用以下符号来满足我们不同的了解数据的需求。这类操作符的特点是:在操作符的右边,都是只有一个固定值,不管是数字还是字符。
- 不等于<>或者!= , NOT
- 大于>,
- 小于<,
- 大于等于>=
- 小于等于<=
3.IS NULL
用 IS NULL 和 IS NOT NULL这两个来筛选NULL值
4.IN / BETWEEN / LIKE
- IN/BETWEEN 是范围匹配
- IN
- 只要满足其中一个就属于满足了WHERE的条件
- 语法:SELECT "字段名"FROM "表格名"WHERE “字段名” IN (‘值一’, ‘值二’, …);
- BETWEEN
- 任何在两个取值范围之间的记录都被认为是满足了WHERE条件
- 语法:SELECT "字段名"FROM "表格名"WHERE “字段名” BETWEEN ‘值一’ AND '值二’;
- IN
- LIKE是模糊匹配,通常搭档百分号符%
- 语法:SELECT "字段名"FROM "表格名"WHERE “字段名” LIKE ‘值%’;
5.AND/OR
AND操作符的逻辑是筛选出满足所有条件的数据
OR操作符的逻辑是筛选出满足任何一个条件的数据
6.AS
- 对变量进行命名以及重命名
- 语法:SELECT "字段名"AS"新字段名"FROM “表格名”
# 从销售表中,找出销售数量在5件以上的会员ID
SELECT member_id FROM sales WHERE quant>5 ;
# 从销售表中,找出销售数量在5件以上同时配送城市为武汉的会员ID
SELECT member_id FROM sales WHERE quant>5 AND delivery_city=' wuhan';
# 计算商品单价并将该变量命名为 price,同时找出商品单价小于100的销售记录
SELECT amount/quant AS price FROM sales HAVING price<100;
三、连接语句
1.INNER JOIN…ON语句(最常用)
INNER JOIN语句两边是需要进行链接的两张表,ON后面的部分则是告诉SQL是根据两张表里的哪个字段去进行表与表之间的连接。
语法:
SELECT column_name(s)
FROM table1
INNER JOIN table2
ON table1.column_name=table2.column_name;
2.LEFT/RIGHT JOIN语句
–
LEFT JOIN:包含LEFT JOIN语句左边表的全部记录以及语句右边表能匹配上的部分记录
RIGHT JOIN:包含RIGHT JOIN语句右边表的全部记录以及语句左边表能匹配上的部分记录
3.FULL OUTER JOIN语句
inner join加上left join再加上right join三种join方式的结合
四、数据聚合
1.GROUP BY 语句
GROUP BY语句可以实现按照特定字段包含的分类进行汇总计算的效果(比如求最小值,最大值,平均值求和等等)
2.ORDER BY 语句
在select from语句后面加上ORDER BY语句可以实现将显示结果按照特定字段进行排序的效果。默认为升序,最后加desc为降序 。
3.HAVING 语句
- 将HAVING语句添加在GROUP BY语句的最后,可以起到筛选出我们想要的结果的效果。
- HAVING语句中使用的筛选的变量一般是做过聚合运算处理之后计算出来的新变量。
- HAVING语句的前面一定要加一条GROUP BY的汇总语句。
4.CASE WHEN 语句 — 非常重要VIP
- CASE WHEN 语句主要是根据是否满足语句中的判断条件会落入不同的取值,对数据进行重新分类整理和命名。
- CASE WHEN语句在结尾部分必须有个END,来提示系统整个循环语句已经结束了。