如何修复Power BI导入数据时的毫秒日期格式错误?
Power BI Power Query处理混合格式日期列的解决方案
第一步:导入CSV时保留文本类型
导入CSV文件时,在Power Query的数据类型检测环节,把目标日期列的类型设置为文本,不要让系统自动识别为日期时间,这样所有原始值都会完整保留,不会出现错误。第二步:统一格式或直接提取日期(两种实用思路)
思路1:将两种格式转成标准日期时间类型(含毫秒)
添加自定义列,用条件判断区分格式后转换:= if Text.Contains([你的日期列名], "AM") or Text.Contains([你的日期列名], "PM") then DateTime.FromText([你的日期列名], [Format="MM/dd/yyyy hh:mm:ss tt", Culture="en-US"]) else DateTime.FromText(Text.Replace([你的日期列名], ":", ".", Occurrence.Last), [Format="MM/dd/yyyy hh:mm:ss.fff", Culture="en-US"])注:带AM/PM的用
tt格式符匹配,带毫秒的把最后一个冒号换成点,用.fff匹配毫秒位,转成标准类型后就能正常操作。思路2:直接提取日期部分(若仅需日期)
跳过格式转换,直接按空格拆分文本取第一部分:= Date.FromText(Text.BeforeDelimiter([你的日期列名], " "), [Format="MM/dd/yyyy", Culture="en-US"])提取后可按需转成日期类型。
第三步:验证结果
替换成实际列名后加载自定义列,检查所有记录是否正常显示。若有个别异常,可调整条件判断逻辑(比如通过检查是否存在最后一个冒号来区分格式)。
内容的提问来源于stack exchange,提问作者trena68aolcom
相关产品推荐
相关产品推荐

