Power Query/Power BI/Tableau公历转波斯历(伊朗历)实现方法咨询
公历转波斯历(伊朗历)实现方案
以下分别提供Power BI和Tableau两种工具的实现步骤:
Power BI 操作步骤
- 先确认
greDate字段为日期类型,若原始数据为文本格式,先新增列转换为日期类型:
greDate_转日期 = Date.FromText([greDate], [Format="dd-M-yyyy"])
- 新增名为
persianDate的计算列,直接调用FORMAT函数指定fa-IR区域输出波斯历格式:
persianDate = FORMAT([greDate_转日期], "dd-MM-yyyy", "fa-IR")
验证效果:2021年8月28日输出为
06-06-1400,2021年8月29日输出为07-06-1400,完全匹配需求的对应关系。
Tableau 操作步骤
- 若
greDate为字符串类型,先转为日期字段:
greDate_转日期 = DATEPARSE("dd-M-yyyy", [greDate])
- 新建计算字段
persianDate,调用日期格式化函数指定波斯语区域:
persianDate = FORMATDATETIME("dd-MM-yyyy", [greDate_转日期], "fa-IR")
也可以通过可视化配置实现:右键
greDate字段,依次选择「默认属性-日期格式」,区域选择「波斯语(伊朗)」,自定义格式填写dd-MM-yyyy即可。
注意事项
- 需保证原始
greDate的格式统一,避免出现转换错误 - 如果需要用转换后的日期做计算,建议额外拆分存储波斯历的年、月、日数值字段,不要仅保留文本格式的日期
内容的提问来源于stack exchange,提问作者WhoIsKi
相关产品推荐
相关产品推荐

