You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerQuery技术问询:如何获取表格指定列的数据类型?

在PowerQuery中获取指定列的数据类型(函数式解决方案)

自定义函数实现

你可以通过以下自定义函数,传入目标表格和列名,直接获取对应列的数据类型:

// 获取指定列的数据类型
GetColumnType = (inputTable as table, columnName as text) as type =>
    let
        ColumnsList = Table.ColumnNames(inputTable),
        IsColumnValid = List.Contains(ColumnsList, columnName),
        ColumnType = if IsColumnValid then Value.Type(Table.Column(inputTable, columnName))
                     else error "指定列名不存在于表格中"
    in
        ColumnType

结合示例表格的用法

以你提供的示例表格为例,调用函数的完整代码如下:

// 示例表格定义
SampleTable = Table.FromRows(
        {
            {1, "Bob", "Smith", "123-4567"},
            {2, "Jim", "Brown", "987-6543"},
            {3, "Paul", "Wick", "543-7890"}
        },
        {"CustomerID", "FirstName", "LastName", "Phone"}    
    ),

// 调用函数获取FirstName列的数据类型
TargetColumnType = GetColumnType(SampleTable, "FirstName")

运行上述代码后,TargetColumnType 的返回值为 type text,完全匹配你的需求。

函数逻辑说明

  • 先提取表格的所有列名,检查目标列名是否存在,避免无效输入导致的异常
  • 若列名有效,通过 Table.Column 获取整列数据,再用 Value.Type 提取该列的统一数据类型
  • 若列名无效,返回明确的错误提示信息

内容的提问来源于stack exchange,提问作者Denis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 14:10:28