此系列为《谁说菜鸟不会数据分析》读书笔记,希望与大家一同分享我的学习心得。
本文将详述Access中部分常用函数。本文使用Access2016。本文源数据来自于《谁说菜鸟不会数据分析》作者博客。
(1)求和(字符必须全部用英文字符)
SELECT 订购明细.订单编号, 订购明细.订单编号, 订购明细.订购日期, 订购明细.用户ID, 订购明细.产品, [单价(元)]*[数量] AS 订单金额 FROM 订购明细
(2)datediff(”参数“,起始时间,结束时间)
其中参数:yyyy 年 q 季度 m 月 d 天 w 周 h 时 n 分 s秒
SELECT 用户ID,注册日期,DATEDIFF("d",注册日期,#2011-12-31#) as 注册天数 FROM 用户明细;
(3)IIF函数(用于数据分层,可进行13层嵌套)
IIF(表达式,表达式成立时返回的值,表达式不成立返回的值)
SELECT 用户ID,年龄, IIF(年龄<=20,"20岁及以下",IIF(年龄<=30,"21-30岁",IIF(年龄<=40,"31-40岁","40岁以上")))as 年龄分组 FROM 用户明细;
(4)CHOOSE函数
CHOOSE(参数,结果1,结果2...结果n)
注意:参数或表达式返回值必须是1-254的数字,若是小数将被取整。
select 用户ID,年龄,choose((年龄-1)/10+1,"10岁及以下","11-20","21-30","31-40","40以上")as 年龄分组 FROM 用户明细;
(5)switch函数
SWITCH(条件1,结果1,条件2,结果2,...,条件n,结果n)
注意:从左向右计算,返回第一个true的表达式,当均不满足时,返回null。
select 用户ID,年龄,switch(年龄<=10,"10岁及以下",年龄<=20,"11-20",年龄<=30,"21-30",年龄<=40,"31-40",年龄>40,"40以上")as 年龄分组 FROM 用户明细;
(6)PARTITION函数(等距分组)
PARTITION(数值参数,开始值,结束值,组距)
注意:开始值,结束值,组距必须是整数,函数返回值为 下限:上限
select 用户ID,年龄,partition(年龄,1,100,20)as 年龄分组 FROM 用户明细;
(7)format函数(对日期进行分组)
format(日期/时间,日期/时间格式参数)
select 用户ID,订购日期,format(订购日期,"yyyy")as 年, format(订购日期,"q")as 季度 FROM 订购明细;