1  为什么开发ZenData
2  ZenData数据生成工具简介
3  如何获得支持
4. 快速入门
4.1  安装部署
4.2  将ZenData加入$PATH系统环境变量中
4.3  命令行参数说明
4.4  命令行调用示例
4.5  內置数据定义示例
4.6  YAML定义语法总览
5. 用户指南
5.1. 数据定义语法
5.1.1  区间
5.1.2  步长
5.1.3  随机
5.1.4  重复
5.1.5  循环
5.1.6  循环支持区间
5.1.7  格式化
5.1.8  函数处理
5.1.9  字面常量
5.1.10  前后缀
5.1.11  分隔符
5.1.12  宽度
5.1.13  嵌套
5.1.14  嵌套字段递归
5.1.15  字段结果随机
5.1.16  文本文件数据
5.1.17  Excel数据查询
5.1.18  时间表达式
5.1.19  值表达式
5.2. 內置数据定义
5.2.1  系列定义
5.2.2  实例定义
5.2.3  实例间无限级嵌套
5.3. 用户数据自定义
5.3.1  自定义Config
5.3.2  扩展现有定义
5.4. 数据定义引用
5.4.1  引用ranges系列
5.4.2  引用instances实例
5.4.3  多froms联合引用
5.4.4  引用Config配置
5.4.5  引用yaml文件内容
5.4.6  全局from语句
5.5. 数据输出
5.5.1  文本格式输出
5.5.2  JSON格式输出
5.5.3  XML格式输出
5.5.4  SQL格式输出
5.5.5  直接插入数据到MySQL
5.5.6  CSV格式输出
5.5.7  Excel格式输出
5.5.8  ProtoBuf格式输出
5.6. ZenData命令行详解
5.6.1  Default配置覆盖
5.6.2  多配置文件新语法
5.6.3  列出內置数据
5.6.4  查看內置数据
5.6.5  从SQL生成数据定义
5.6.6  清除数据前后缀
5.6.7  数据反向解析
5.7. ZenData文章生成器
5.7.1  中文词语基础数据
5.7.2  转换文章到YAML配置
5.7.3  文章格式语法介绍
5.7.4  从YAML配置生成新文章
5.8. ZenData Web服务
5.8.1  Web服务启动
5.8.2  Web接口调用
5.8.3. 数据提供者示例
5.8.3.1  TestNG数据提供者示例
5.8.3.2  PHPUnit数据提供者示例
5.8.3.3  PyUnit数据提供者示例
5.8.4. Web数据管理工具
5.8.4.1  关于数据设计工具
5.8.4.2  加载已有数据文件
5.8.4.3  管理我的数据
5.8.4.4  管理內置数据
5.8.4.5  数据设计页面
5.8.4.6  数据区间编辑
5.8.4.7  数据引用编辑
6. 内置数据一览
6.1  使用命令查看內置数据
6.2. 预置Excel数据
6.2.1  国家
6.2.2  地址
6.2.3  人名
6.2.4  颜色
6.2.5  中文词语
6.3  內置数据定义

时间表达式

2021-03-12 14:35:25
陈琦
2408
最后编辑:陈琦 于 2021-09-29 10:21:43
分享链接

时间格式支持两种方式定义:一种是以当前时间为基准,在当前时间的基础上增加或者减少对应的时间段;另一种是直接指定具体的时间。
以当前时间为基准进行运算,生成从一月前到一周后数据,步长为60分钟(`m`),单位Y、M、D、W、h、m、s分别对应年、月、日、周、时、分、秒,可用于起始时间和步长,步长的单位默认为1秒(`s`),不写单位是默认单位为秒(`s`)。
月份、星期几的长/短格式,可分别用January/Jan和Monday/Mon来表达,如`YY/Jan/DD`。

- field: field_timestamp_now      
                   range: "(-1M)-(+1w):60m"        
                   prefix: DateTime 
                   type: timestamp 
                   format: "YY/MM/DD hh:mm:ss"


使用指定具体时间进行定义,生成从2021年1月1日0时0分0秒到2021年1月1日23时0分0秒的数据,步长为60秒(`s`),也可以省略起始或者终止时间,省略的部分默认为当前日期的0时0分0秒(如果省略的是起始时间)或者23时59分59秒(如果省略的是终止时间),对于上面第一种方式省略的部分也是一样。

- field: field_timestamp_now_1     
  range: "20210101 000000-20210101 230000:60"       
  prefix: DateTime
  type: timestamp
  format: "YY/MM/DD hh:mm:ss"
- field: field_timestamp_now_2     
  range: "-20210101 230000:60" # 生成从当前时间到2021年1月1日23时0分0秒的数据,步长为60秒      
  prefix: DateTime
  type: timestamp
  format: "YY/MM/DD hh:mm:ss"
- field: field_timestamp_now_3     
  range: "20210101 000000-:2h"  # 生成从2021年1月1日0时0分0秒到当前时间的数据,步长为2小时    
  prefix: DateTime
  type: timestamp
  format: "YY/MM/DD hh:mm:ss"
- field: field_timestamp_now_4     
  range: "20210101 000000:1W"   # 生成从2021年1月1日0时0分0秒到当前时间的数据,步长为1周    
  prefix: DateTime
  type: timestamp
  format: "YY/MM/DD hh:mm:ss"

注意:
1. 合法的时间格式是从0时0分0秒到23时59分59秒,24时0分0秒是不合法的时间
2. 步长会根据指定的起始和结束时间自动调整正负号。


发表评论
评论通过审核后显示。