Excel Powerpivot从表2的数据范围中检索基数值,以作为列添加到表1中

Excel Powerpivot从表2的数据范围中检索基数值,以作为列添加到表1中,excel,powerquery,Excel,Powerquery,使用Excel 365 Powerquery 我有两个数据源table1和table2,其中包含以下条目: table1: ID | salary =========== 1 | 10 2 | 1000 table2: ID | inclminval | exclmaxval | class | display 20 | 0 | 100 | P1 | Poor man 30 | 100 | 9999 | P9

使用Excel 365 Powerquery

我有两个数据源
table1
table2
,其中包含以下条目:

table1:

ID | salary
===========
1  |    10
2  |  1000

table2:
ID | inclminval | exclmaxval | class | display
20 |         0  |        100 |    P1 | Poor man
30 |       100  |       9999 |    P9 | Wealthy
我想在表1后面加上:对于每一个条目,表1.1工资


  • 将其与表2的范围进行比较。在表2上,添加列。。。自定义列。。。使用列名自定义和公式=1

    一个表1,添加列。。。自定义列。。。使用列名自定义和公式=1

    家。。合并查询

    使用完全外部联接选择并匹配两个表中的自定义

    使用新列顶部的箭头[x]展开inclminvalexclmaxcalclass显示列

    添加列。。。公式类似于的自定义列

    = if [salary]>=[inclminval] and [salary]<[exclmaxcal] then "keep" else "remove"
    

    =如果[salary]>=[inclminval]和[salary]=[inclminval]和[salary],您能否向我们展示所需的输出?你也有一些你尝试过的代码吗?我想我理解你在做什么。展开表2,将最小值和最大值之间的所有可能值添加到与表1的“薪资”内部联接的其他列中。现在工资当然可以是分数的,所以这个解决方案不起作用?编辑以处理分数为什么不只是交叉联接
    AddCustom=Table.AddColumn(源代码,“Custom”,每个表2)
    为什么不呢。很好的呼唤。谢谢
    let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    #"Added Custom" = Table.AddColumn(Source, "Custom", each 1),
    #"Merged Queries" = Table.NestedJoin(#"Added Custom",{"Custom"},Table2,{"Custom"},"Table2",JoinKind.FullOuter),
    #"Expanded Table2" = Table.ExpandTableColumn(#"Merged Queries", "Table2", {"inclminval", "exclmaxcal", "class", "display"}, {"inclminval", "exclmaxcal", "class", "display"}),
    #"Added Custom1" = Table.AddColumn(#"Expanded Table2", "Custom.1", each if [salary]>=[inclminval] and [salary]<[exclmaxcal] then "keep" else "remove"),
    #"Filtered Rows" = Table.SelectRows(#"Added Custom1", each ([Custom.1] = "keep")),
    #"Removed Columns" = Table.RemoveColumns(#"Filtered Rows",{"Custom", "inclminval", "exclmaxcal", "display", "Custom.1"})
    in #"Removed Columns"