如何在Power Query中提取数据?——时间篇(1)

如何在Power Query中提取数据?——时间篇(1)_第1张图片

今天我们来了解下,在Power Query中如何提取需要的时间。

如何在Power Query中提取数据?——时间篇(1)_第2张图片

日期作为业务维度里面一个很重要的因素,大部分的业务分析都离不开时间这个条件,所以对于时间的提取的准确性就显得尤为重要。

在转换获取中,我们也可以通过快速方式及菜单方式进行转换格式获取。

如何在Power Query中提取数据?——时间篇(1)_第3张图片
如何在Power Query中提取数据?——时间篇(1)_第4张图片

1. 提取日期

一般情况下,分析业务很大一部分都是用天为最小计量单位,但是一般导入到PQ里面的日期数据格式,都是日期时间格式DateTime,后面会带有0:00:00的时间后缀。但是我们只需要年月日的时间,那我们可以通过函数进行提取,也可以通过菜单进行快速转换。

DateTime.Date(datetime as any) as nullable date

因为参数中是any,所以参数内的格式可以是日期,日期时间,时间区域等格式。

DateTime.Date(#date(2018,11,11))=2018/11/11

DateTime.Date(#datetimezone(2018, 11, 11, 0, 0, 0, 8, 0))=2018/11/11

DateTime.Date(#datetime(2018,11,11,1,1,0))=2018/11/11

2. 提取年份

Date.Year(datetime as any) as nullable number

Date.Year(#datetime(2018,11,11,1,1,0))=2018

注意:虽然参数格式是any,但是也需要包含有年份数据的格式。如果是纯时间格式则会发生错误。

Date.StartOfYear(datetime as any) as any 提取起始年份

Date.StartOfYear(#datetime(2018,11,11,1,1,0))=2018/1/1 0:00:00

Date.StartOfYear(#date(2018,11,11))=2018/1/1

生成的格式是转换数据的格式。

Date.EndOfYear(datetime as any) as any 提取结束年份

Date.EndOfYear(#datetime(2018,11,11,1,1,0))=2018-12-31T23:59:59.9999999

3. 提取季度

Date.QuarterOfYear(datetime as any) as nullable number

提取季度数,生成的是数值1-4

Date.StartOfQuarter(datetime as any) as any

提取起始季度,返回的格式是提取数据的格式

Date.StartOfQuarter(#date(2018,11,1))=2018/10/1

Date.StartOfQuarter(#datetime(2018,5,1,09,10,1))=2018/4/1 0:00:00

Date.EndOfQuarter(datetime asany) asany

提取结束季度,返回的格式是提取数据的格式

Date.EndOfQuarter(#date(2018,11,1))=2018/12/31

Date.EndOfQuarter(#datetime(2018,11,1,12,10,10))=2018-12-31T23:59:59.9999999

4. 提取月份

Date.Month(date as any) as nullabel number

返回的是月份数字格式

Date.Month(#date(2018,11,11))=11

Date.MonthName(date as any, optional culture as nullable text) as nullable text

返回的是月份名称文本格式,第2参数可以选择中文或英文

Date.MonthName(#date(2018,11,11),"cn")=十一月

Date.MonthName(#date(2018,11,11),"en")=November

Date.StartOfMonth(datetime as any) as any

提取初始月份,返回的格式是提取数据的格式

Date.StartOfMonth(#date(2018,11,11))=2018/11/1

Date.StartOfMonth(#datetime(2018,11,11,10,1,20))=2018/11/1 0:00:00

Date.EndOfMonth(datetime as any) as any

提取期末月份,返回的格式是提取数据的格式

Date.EndOfMonth(#date(2018,11,11))=2018/12/31

Date.EndOfMonth(#datetime(2018,11,11,10,1,20))=2018-11-30T23:59:59.9999999

5. 提取日

Date.Day(datetime as any) as nullable number

返回的是日的数字格式

Date.Day(#date(2018,11,11))=11

Date.StartOfDay(datetime as any) as any

返回初始日,返回的格式是提取数据的格式

Date.StartOfDay(#date(2018,11,11))=2018/11/1

Date.EndOfDay(datetiem as any) as any

返回结束日,返回的格式是提取数据的格式

Date.EndOfDay(#datetime(2018,11,11,23,00,00))=2018-11-11T23:59:59.9999999

Date.DaysInMonth(datetime as any) as nullable number

返回月的实际天数,返回格式是数值28-31

Date.DaysInMonth(#date(2016,2,10))=29

Date.DaysInMonth(#date(2018,2,10))=28

Date.DayOfYear(datetime as any) as nullable number

返回为当年的多少天,返回格式是数值1-366

Date.DaysOfYear(#date(2016,12,31))=366

Date.DaysOfYear(#date(2018,12,31))=365

Date.DaysOfYear(#date(2018,11,11))=315

你可能感兴趣的:(如何在Power Query中提取数据?——时间篇(1))