使用英语阅读

通过


Table.Distinct

语法

Table.Distinct(table as table, optional equationCriteria as any) as table

关于

从表中删除重复的行。 可选参数 equationCriteria 指定对表中的哪些列进行测试以确定是否有重复项。 如果未指定 equationCriteria,则测试所有列。

由于 Power Query 有时会将某些操作卸载到后端数据源(称为“折叠”),有时还会通过跳过并非绝对必要的操作来优化查询,因此通常无法保证会保留哪些特定的重复项。 例如,不能假设具有唯一列值集的第一行将保留,而表中更靠后的行将被删除。 如果希望重复删除的行为可预测,请首先使用 Table.Buffer 缓冲表。

示例 1

从表中删除重复行。

使用情况

Table.Distinct(
    Table.FromRecords({
        [a = "A", b = "a"],
        [a = "B", b = "b"],
        [a = "A", b = "a"]
    })
)

输出

Table.FromRecords({
    [a = "A", b = "a"],
    [a = "B", b = "b"]
})

示例 2

从表 ({[a = "A", b = "a"], [a = "B", b = "a"], [a = "A", b = "b"]}) 的列 [b] 中删除重复行。

使用情况

Table.Distinct(
    Table.FromRecords({
        [a = "A", b = "a"],
        [a = "B", b = "a"],
        [a = "A", b = "b"]
    }),
    "b"
)

输出

Table.FromRecords({
    [a = "A", b = "a"],
    [a = "A", b = "b"]
})

公式条件