一 语句主要关键字
①SELECT --查询数据列
②INTO --新建数据表
③FROM --查询数据表
④WHERE --筛选数据表结果
⑤ORDER BY --筛选结果排序
⑥GROUP BY --筛选结果分组
⑦HAVING --筛选分组结果
⑧UNION --合并查询结果
二 新增列功能汇总
SELECT distrint 列名, --1.单列去重
列 AS 新列名, --2.列命名
函数(列) + 列名 AS 新列名, --3.函数+计算式
CASE WHEN 函数(列) + 列 > 80 --4.函数+计算式+条件筛选
THEN 新建列1 或 函数(列) + 列 > 80 --5.新建列+函数+计算式+条件筛选
THEN 新建列2 或 函数(列) + 列 > 80
ELSE 新建列3 或 函数(列) + 列 > 80
END 新列名
FROM 表名
三 筛选条件汇总
SELECT * FROM 数据表
WHERE 列名 >,<,=,!=,<> 数值 --1.比较查询=数值和字符
列名 BETWEEN 500 AND 100 --2.区间查询=数值
列名 IN ('字符','数值') --3.批量提取字符
列名 LIKE --4.特定字符查询
LIKE‘%字符%’ --模糊查询
LIKE‘字符%’ --精确查询
LIKE‘_字符%’ --定位查询
LIKE‘%[50%]%’ --数字符号查询
LIKE‘%[^50%]%’ --逆向查询
列名 IN NULL 或 IN NOT NULL --处理空值
--1 in 和like 功能性探索
注意:()和’’对应数字和字符的使用,两个关键字的查询内容都可以是字符或者数字
注意:默认都是字符型数据,如果要进行计算,改成数值型数据
--2 in :①可以多个查询,②可以查询字符和数字,③能一起查,④内容完全对应
select * from 体检信息 where 姓名 IN ('宋秋雨','王复学')
select * from 电话号码 where 姓名 IN ('13591067891','16604106992')
--3 like:①可以多个查询,②可以查询数字,③但是要分列查询,④内容可以模糊查询
select * from 体检信息 where 姓名 like '%宋%' or 家属年龄 like '%48%'
--4 like查询套路:筛选字符中的有用信息
--第一步:可乐和雪碧同时存在的数据
where 列名 like’%可乐%’ and 列名 like’%雪碧%’
--第二步:显示可乐的数据和显示雪碧的数据
where 列名 like’%可乐%’ or 列名 like’%雪碧%’
--第三步:在显示可乐和雪碧的数据同时去掉有牙膏字样的数据
where 列名 like’%可乐%’ or 列名 like’%雪碧%’ and 列名 not like’%牙膏%’ :
--5 数据表中空白格解析:
--如果空白格中无数据:但是又不是null 那就代表空白格中的数据为0,
--如果是数值列:可以直接使用where 年龄 !='0' 姓名列不为0的列
--如果是字符的列:就可以用where 姓名 like '%_%' 姓名列不为空的列
四 函数汇总
--1 第一部分:字符个数
LEN(‘列’) --列的字符数
charindex(‘列中字符’,‘列’) --列中字符在列中的位置
--2 第二部分字符提取
left (‘列’,1) --左显示几个字符
right (‘列’,1) --右显示几个字符
substring (‘ 列’,2,1) --从第几位选择几个字符
--3 第三部分字符替换
replace(‘ 列 ’,‘列中字符’,‘替换成字符’) --替换选择的列中字符
--4 第四部分其他功能
ltrim (‘ 列’) --删除前导空格
rtrim (‘ 列’) --删除尾随空格
lower (‘ 列’) --转小写字母
upper (‘ 列’) --转大写字母
--5 聚合函数
COUNT( * ) --统计表中元组个数
SUM(<列名>) --计算列值总和(必须是数值型列)
MAX(<列名>) --求列值最大值(可以是非数值列)
COUNT(<列名>)--统计某一列中非空值个数
AVG(<列名>) --计算列值平均值(必须是数值型列)
MIN(<列名>) --求列值最小值 (可以是非数值列)
--6 函数位置说明
--1、函数在select中使用:建立as列名,后接where查询,不能使用as列名,需用完整函数表达式
--2、函数在where中使用:单独在where中使用必须完整布尔表达式
--3、在order by中使用:可以使用as列名进行排序
--4、在case when中使用:出现在条件表达式中,而case语句出现在select中
--5 函数组合说明:函数结果数字+比较范围
--函数结果数字+计算数字
--函数使用位置说明:
--函数在select中格式 :select 函数名 (列名) from 表名
--函数在where中格式 : select * from 表名 where 函数名(列名)
五 其他关键字汇总
--1 Order by
SELECT *
FROM 数据表
WHERE 查询条件
ORDER BY 列 DESC --1.单列排序
SELECT *
FROM 数据表
WHERE 查询条件
ORDER BY 列,列 --2.多列排序
--2 Group by
SELECT 列1,COUNT (*)
FROM 数据表
GROUP BY 列1 --1.单列分组求数
SELECT 列1,列2,列3,COUNT (*)
FROM 数据表
GROUP BY 列1 ,列2,列3 --2.多列分组求数
SELECT 列名 , COUNT(求数列)次数 , SUM (求和列)总额
FROM 数据表
GROUP BY 列名 --3.分组求数+求和
--说明:在得出分类名称,分类次数后,对分类后每次的数额进行分类求和,
--可以对分组前,同名的机构进行求和验证数额的正确性