Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
6 years ago
Solved

how to union multiple tables same column name but not same order

hello

 

My first table has the following fields in that order

employeeid, fullname, managerid, managername, herachypath, hierachydepth, level1, level2, level3, ..., allLevelSort, isleaf

 

while the second table has the same field but they are alphabetically sort.

 

When I want to create a new table  allManagers=union('dim manager Level 1' ,'dim manager level2 ') it gives stange things.

Does someone know how to solve this isssue.

  • Anonymous's avatar
    Anonymous
    6 years ago

    Hi Anonymous,

    For Dax formulas, current you can only use 'SELECTCOLUMNS', 'SUMMARIZE', 'GROUPBY' functions to choose columns and define the order of the columns in variable tables and merge them with union functions.

    Table = UNION(GROUPBY(T1,[1],[2],[3],[4],[5]),GROUPBY(T2,[1],[2],[3],[4],[5]))

    In addition, you can also do merge table operation in query edit, it allows you to change the order of columns.

    let
        Source = Table.Combine({@T1,Table.ReorderColumns(@T2,Table.ColumnNames(@T1))})
    in
        Source

    Regards,

    Xiaoxin Sheng

3 Replies

    • Anonymous's avatar
      Anonymous
      Not applicable

       

       

      if in the second table the order is not exactly the same as in dim manager level1, for ex: 

      HierarchyDepth", 'dim Manager Level 1'[HierarchyDepth],  when I create a global table using a union, it add the wrong fields.
       
      Is there a way to avoid that
       
      • Anonymous's avatar
        Anonymous
        Not applicable

        Hi Anonymous,

        For Dax formulas, current you can only use 'SELECTCOLUMNS', 'SUMMARIZE', 'GROUPBY' functions to choose columns and define the order of the columns in variable tables and merge them with union functions.

        Table = UNION(GROUPBY(T1,[1],[2],[3],[4],[5]),GROUPBY(T2,[1],[2],[3],[4],[5]))

        In addition, you can also do merge table operation in query edit, it allows you to change the order of columns.

        let
            Source = Table.Combine({@T1,Table.ReorderColumns(@T2,Table.ColumnNames(@T1))})
        in
            Source

        Regards,

        Xiaoxin Sheng