谁说菜鸟不会数据分析(工具篇)--笔记


1、 Access a) 函数计算 i. DATADIFF 1. 2. DATADIFF(“参数”,起始时间,结束时间) 参数说明
参数 yyyy q m d w h n s 说明 年 季度 月 天 周 时 分 秒

ii.

例句 SELECT 用户 ID,注册日期,DATEDIFF(“D”,注册日期,#2011-12-31#) AS 注 册天数 FROM 用户明细; Access 数据库常用函数 3.

函数类 别

常用函数 Year() Month() Day() Date() DateDiff() DataPart() Abs() Int() Round() Len() Mid() Left() Right()

说明 返回给定日期的年份 返回给定日期的月份 返回给定日期的天 返回系统日期 计算两个给定日期的间隔, DateDiff("参数", 起始日期,结束日期),参数详见参数表 返回给定时间的指定部分, DatePart("参数", 日期),参数详见参数表 返回数值的绝对值 返回数值的整数部分 将数值四舍五入到指定的小数位数 返回字符串的长度 返回字符串从指定位置开始指定个数的字符 返回字符串从左边开始指定个数的字符 返回字符串从右边开始指定个数的字符

日期

数学

字符

b)

数值分组 i. IIF 函数法 1. 与 Excel 中的 IF 函数用法及功能一样。在 Access 数据库中,IIF 函数最多 可进行 13 层嵌套 2. IFF(表达式,表达式成立时返回的值,表达式不成立时返回的值) 3. 例句 a) SQL

b)

SELECT 用户 ID,年龄, IIF(年龄<=20,”20 岁及其以下”, IIF(年龄<=30,”21-30 岁”, IIF(年龄<=40,”31-40 岁”, “40 岁以上”))) AS 年龄分组 FROM 用户明细; 结果

用户 ID 年龄 100000 23 100001 18 100002 24 100006 30 100010 22 100011 20 100012 45 100013 20 100015 24 100016 27 100017 44 100019 41 100020 22
ii. CHOOSE 1. 2. 3.

年龄分组 21-30 岁 20 岁及其以下 21-30 岁 21-30 岁 21-30 岁 21-30 岁 40 岁以上 20 岁及其以下 21-30 岁 21-30 岁 40 岁以上 40 岁以上 21-30 岁

4.

5.

与 Excel 中的 CHOOSE 函数用法及功能一样。 CHOOSE(参数,结果 1,结果 2,??,结果 N) 说明: a) 参数可为表达式,如果参数或表达式返回的值为 1,则函数 CHOOSE 返回结果 1;如果参数或表达式返回的值为 2,函数 CHOOSE 返回结 果 2,以此类推。 b) 参数或表达式返回的值必须为 1~254 的数字,如果小于 1 或者大于 254,则 Access 数据库将返回错误值“#VALUE! ” 。 c) 如果参数为小数, 则在使用前将被截尾取整, 即相当于 Excel 中的 INT 函数效果。 例句 SELECT 用户 ID,年龄, CHOOSE((年龄-1)/10+1,”10 岁及其以下”,”11-20 岁”,”21-30 岁”,”31-40 岁”,”40 岁以上”) AS 年龄分组 FROM 用户明细; 结果

用户 ID 年龄 100000 23 100001 18 100002 24 100006 30 100010 22 100011 20 100012 45 100013 20 100015 24 100016 27 100017 44 100019 41 100020 22
iii.

年龄分组 21-30 岁 20 岁及其以下 21-30 岁 21-30 岁 21-30 岁 21-30 岁 40 岁以上 20 岁及其以下 21-30 岁 21-30 岁 40 岁以上 40 岁以上 21-30 岁

iv.

SWITCH 1. SWITCH(条件 1,结果 1,条件 2,结果 2,??,条件 N,结果 N) 2. 说明 a) 如果条件 1 为 True, SWITCH 将返回结果 1, 如果条件 2 为 True, SWITCH 将返回结果 2,以此类推。 b) 参数由成对的条件表达式和结果值组成, 条件表达式按照从左到右的 顺序求值,将返回与第一个求职结果为 True 的表达式相对应的结果 值。 c) SWITCH 函数在 SQL 语句中的表达式最多可以达到 14 个,如果多于 14 个,将提示错误。 d) 如果所有表达式的结果值都不为 True,SWITCH 将返回 Null。 3. 例句 SELECT 用户 ID,年龄, SWITCH(年龄<=20,”20 岁及其以下”, 年龄<=30,”21-30 岁”, 年龄<=40,”31-40 岁”, 年龄>40,”40 岁以上”) AS 年龄分组 FROM 用户明细; 4. 运行结果与 IIF 函数分组效果相同,但 SWITCH 函数会让人感觉分组更清 晰些。 PARTITION 1. PARTATION(数值参数,开始值,结束值,组距) 2. 说明: a) 数值参数为要根据范围进行计算的整数。 b) 开始值必须为整数,并且不能小于 0。 c) 结束值也必须为整数,该数值不能等于或小于开始值。 d) 组距也必须为整数, 指定在整个数值范围内 (在开始值与结束值之间) 的分区大小。 e) PARTITION 返回的内容为每组的“下限:上限” 。

3.

4.

例句 SELECT 用户 ID,年龄, PARTITION(年龄,1,100,20) AS 年龄分组 FROM 用户明细; 结果

v.

年龄分 组 100000 23 21:40 100001 18 1:20 100002 24 21:40 100006 30 21:40 100010 22 21:40 100011 20 1:20 100012 45 41:60 100013 20 1:20 100015 24 21:40 100016 27 21:40 100017 44 41:60 100019 41 41:60 100020 22 21:40 四个分组函数的优缺点比较 数值分组函数 优点 用户 ID 年龄 IIF CHOOSE SWITCH PARTITION 可进行不等距分组 分组可达 254 个 可进行不等距分组 分组不限 语句简单、清晰、明了

缺点 语句冗长,极易出错 IFF 函数最多可进行 13 层嵌套 只能进行等距分组 条件表达式最多达到 14 个 只能进行等距分组

c)

日期/时间分组 i. FORMAT(日期/时间,时间/日期格式参数)

日期/时间格式参数 :(冒号) / d dddd w ww m mmmm q y yyyy h n s
ii.

说明 时间分隔符 日期分隔符 根据需要以一位或两位数字表示一个月中的第几天(1~31) 星期的全称(Sunday~Saturday) 一周中的第几天(1~7) 一年中的第几周(1~53) 根据需要以一位或两位数字表示一年中的月份(1~12) 月份的全称(January~December) 一年中的地级季度(1~4) 一年中的第几天(1~366) 完整的年份(0100~9999) 根据需要以一位或两位数字表示小时(0~23) 根据需要以一位或两位数字表示分钟(0~59) 根据需要以一位或两位数字表示秒(0~59)

例句 SELECT 订单编号,订购日期, FORMAT(订购日期,”yyyy”) AS 年, FORMAT(订购日期,”q”) AS 季, FORMAT(订购日期,”m”) AS 月, FORMAT(订购日期,”d”) AS 日, FORMAT(订购日期,”dddd”) AS 星期, FORMAT(订购日期,”h”) AS 小时, FORMAT(订购日期,”n”) AS 分, FORMAT(订购日期,”s”) AS 秒 FROM 订购明细; 结果

iii.

订单编号

订购日期



季 月 日 星期

119032291 2011-9-2 8:17:00 2011 3 9 2 Friday 119032292 2011-9-2 8:17:00 2011 3 9 2 Friday 119032293 2011-9-2 8:17:00 2011 3 9 2 Friday 119032294 2011-9-2 8:17:00 2011 3 9 2 Friday 119032295 2011-9-2 8:17:00 2011 3 9 2 Friday 119032296 2011-9-2 8:17:00 2011 3 9 2 Friday 119032297 2011-9-2 8:17:00 2011 3 9 2 Friday 119032298 2011-9-2 8:17:00 2011 3 9 2 Friday 119032299 2011-9-2 8:17:00 2011 3 9 2 Friday 119032300 2011-9-2 8:17:00 2011 3 9 2 Friday 119032301 2011-9-2 8:17:00 2011 3 9 2 Friday 119032302 2011-9-2 8:17:00 2011 3 9 2 Friday 119032303 2011-9-2 8:17:00 2011 3 9 2 Friday 119032304 2011-9-2 8:18:00 2011 3 9 2 Friday 119032305 2011-9-2 8:18:00 2011 3 9 2 Friday 119032306 2011-9-2 8:18:00 2011 3 9 2 Friday 119032307 2011-9-2 8:18:00 2011 3 9 2 Friday 119032308 2011-9-2 8:18:00 2011 3 9 2 Friday 119032309 2011-9-2 8:18:00 2011 3 9 2 Friday 119032310 2011-9-2 8:18:00 2011 3 9 2 Friday 119032311 2011-9-2 8:18:00 2011 3 9 2 Friday 119032312 2011-9-2 8:18:00 2011 3 9 2 Friday 119032313 2011-9-2 8:18:00 2011 3 9 2 Friday d) 重复项查询 i. Count 就是计数的意思 HAVING Count(用户 ID)>1 对用户 ID 出现 2 次及以上的数据进行分组 ii. 不重复项查询 SELECT 用户 ID,Count(用户 ID) AS NumberOfDups FROM 订购明细 GROUP BY 用户 ID HAVING Count(用户 ID) = 1; iii. 数据去重查询—Excel 删除重复项功能 1. GROUP BY 子句 SELECT 用户 ID FROM 订购明细 GROUP BY 用户 ID; 2. DISTINCT SELECT DISTINCT 用户 ID FROM 订购明细; e) 简单统计

小 时 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8

分 秒 17 17 17 17 17 17 17 17 17 17 17 17 17 18 18 18 18 18 18 18 18 18 18 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

i.

Access 常用统计函数

统计函 说明 数 Count() 统计指定列中值的个数 Sum() 计算数值型数据的总和 Avg() 计算数值型数据的平均值 Max() 筛选出数据的最大值 Min() 筛选出数据的最小值 StDev() 计算数据型数据的标准差 Var() 计算数值型数据的方差 ii. 例句 SELECT Count(订单编号) AS 订单总数 Sum(订购金额) AS 订单金额总额 Avg(订购金额) AS 平均订单金额 FROM 订购明细; f) 分组统计 i. 例句 1 SELECT Count(订单编号) AS 订单总数 Sum(订购金额) AS 订单金额总额 Avg(订购金额) AS 平均订单金额 FROM 订购明细 GROUP BY 产品; ii. 例句 2 SELECT FORMAT(订购日期,”h”) AS 时段 Count(订单编号) AS 订单数 FROM 订购明细 GROUP BY FORMAT(订购日期,”h”);


相关文档

谁说菜鸟不懂数据分析(工具篇)-读书笔记
谁说菜鸟不会数据分析(入门篇)笔记5.2数据分析工具-5多选题分析
《谁说菜鸟不会数据分析(工具篇)》
《谁说菜鸟不会数据分析》读书笔记
谁说菜鸟不会数据分析(入门篇)笔记5.2数据分析工具-3数据透视表分析实践
谁说菜鸟不会数据分析(入门篇)笔记4.4-数据抽样
谁说菜鸟不会数据分析(入门篇)笔记4.3数据加工-1.数据抽取-2字段合并
谁说菜鸟不会数据分析(入门篇)笔记6.3给图表换装-4瀑布图
[转载]读书笔记《谁说菜鸟不会数据分析》
谁说菜鸟不会数据分析(入门篇)笔记5.1数据分析方法-5交叉分析法
谁说菜鸟不会数据分析
《谁说菜鸟不会数据分析》
谁说菜鸟不会数据分析
谁说菜鸟不会数据分析
谁说菜鸟不会数据分析_(完整)
电脑版