1 概述
日期表,故名思义,就是存放日期的表。
新人常会感到困惑,业务表(销量、业绩、采购、检验、出/入库等单据)里不都有日期列吗,为什么还要把日期放在一张额外的表里?
大家都知道,不管零售、制造、金融还是其他什么行业,但凡涉及到数据统计,都离不开日期维度的分析,如累计销量、环比增速、同比增长等,之所以不用业务表的日期列,是因为单独日期表有以下几个特点:
- 日期表的日期是独立完整的,没有缺失,这对日期维度的分析来说很重要。
- 业务表里的日期只有业务发生时才会有记录,否则就缺失日期表除了自带的日期列,可以衍生出其他日期相关列,诸如年、月、日、季、周等,一年365行数据。业务表就不同了,一个公司有N个部门,一个部门有N个员工,假如每个员工每天产生一条业务数据,那一年要多少行?如果想按季统计销量,按月统计采购、按周统计销量、就必须同时扩充这三张表里的日期列——毫无效率,凭添隐患
...
这个时候使用【生成日期表】,就能解决,最终效果如下:
示例数据下载:业务表.xls
具体操作步骤如下:
- 目标数据源:支持存储"日期表"的数据库类型:高速缓存库,mysql、clickhouse、mssql、oracle、monetdb,默认高速缓存库
- 表名: 存放在数据库中的表名,具有唯一性,无法填写重复的表名,如果已存在则会进行提示;
- 开始时间、结束时间:目前跨度最大是100年;比如【开始时间】选择了1990-01-01年,【结束时间】选择了2091-12-31,会提示:请选择100年内的日期31,会提示:请选择100年内的日期
- 日期字段名:默认C_Date; 如果需要建多张“日期表” ,建议修改一下日期字段名,以方便区分;
- 创建时间字段:用于当前“日期表”中创建的时间格式字段:
...
2)年季:输出主键字段”日期“和时间字段”年季“、”季“。创建时间字段;
3)年月:输出主键字段”日期“和时间字段”年月“、”月“;
...
5)年月日:输出主键字段”日期“和时间字段”年月日“;
- 自定义字段名:即保存在数据库表中的字段名称,默认都是英文,如输入中文,需要看保存的数据库是否支持
1)"年"默认字段名:C_YEAR
2)”年季“默认字段名:C_YEAR_QUARTER
3)”季“默认字段名:C_QUARTER
4)”年月“默认字段名:C_YEAR_MONTH
5)”月“默认字段名:C_MONTH
6)”年周“默认字段名:C_YEAR_WEEK
7)”周“默认字段名:C_WEEK
8)”年月日“字段名:C_YEAR_MONTH_DAY
...