使用Power BI从网页获取CSV数据时,能否自动指定数据类型?
Power BI自动识别字段类型的解决方案
方法1:优化CSV格式+复用Power Query步骤
- 先规范CSV内容:日期用
YYYY-MM-DD这类标准格式,数字不要混有非数字字符(比如多余符号、空格),降低Power BI识别难度 - 进入Power Query编辑器后,选中目标列(或全选),点击「转换」→「数据类型」→「检测数据类型」,这个操作会被保存为查询步骤,下次刷新数据时自动执行,无需手动重复操作
- 如果自动检测不准,直接手动给列指定类型(比如设为「日期/时间」「整数」),这些设置会被Power BI记录,后续刷新自动生效
方法2:更换数据源格式
- 换成Excel(.xlsx):Excel本身会保留单元格的格式属性,Power BI导入时能直接识别数字、日期类型,省去类型转换步骤
- 换成JSON格式:JSON有明确的类型定义,只要数据里日期用ISO格式(比如
2024-05-20T10:30:00)、数字为纯数值,Power BI导入时会自动匹配对应类型
方法3:用Power Query M代码精准控制
如果需要更灵活的类型设置,可以直接编辑M代码,批量指定列的类型,示例代码如下:
let 源 = Csv.Document(File.Contents("你的CSV文件路径"),[Delimiter=",", Encoding=1252, QuoteStyle=QuoteStyle.None]), #"提升的标题" = Table.PromoteHeaders(源, [PromoteAllScalars=true]), #"批量设置类型" = Table.TransformColumnTypes(#"提升的标题",{ {"订单日期", type date}, {"订单金额", type number}, {"商品数量", Int64.Type} }) in #"批量设置类型"
把代码里的列名和对应类型改成你的实际字段,保存后每次刷新数据都会自动应用这些类型设置。
内容的提问来源于stack exchange,提问作者Ben Holness
相关产品推荐
相关产品推荐

