我正在尝试使用 DAX 函数将八位数字 yyyymmdd 转换为日期格式。
column = DATE(LEFT(TABLE[COLUMN],4),MID(TABLE[COLUMN],5,2),RIGHT(TABLE[COLUMN],2))
但是,由于原始列有一些带有"00000000"的记录,我遇到了错误,那么如何使用 IF 语句制作默认值或有更好的解决方案?
此致敬意
我通常做的只是制作 2 个不同的 Power Query 步骤,这是自动处理的。
- 只需将
yyyymmdd
列设置为文本列即可 - 将步骤 1 中的文本列设置为日期列(出现提示时,请务必选择"添加新步骤"(
- 将错误替换为空
就是这样。您甚至可以按住 Ctrl 并单击以选择多个列,并将它们合并到具有多个列的 1、2 和 3 步骤中。
请查看"ferror"函数IFERROR(value,value_if_error(有关更多信息,请访问Microsoft MSDN,链接如下https://msdn.microsoft.com/en-us/library/ee634765.aspx
column = IFERROR( DATE(LEFT(TABLE[COLUMN],4),MID(TABLE[COLUMN],5,2),RIGHT(TABLE[COLUMN],2)), DATE(yyyy,mm,dd))