Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
8 years ago
Solved

Column Type Data Type clarification in Power Query

I'm trying to figure out what data types are available for the Column Type field, and I've yet to come across anything in the documententation that helps with my question. I'm trying to add a column, and I want to specify the column type to always come back as an integer, rather than a decimal number.  However, by default the column type comes back as "number". Is there a way to figure out what are valid options for that field, as Int64 and variations on how to spell or call it don't seem to be accepted.

 

For reference, I'm looking at https://msdn.microsoft.com/en-us/library/mt260727.aspx which mentions optional column type but provides no links to what those might be.

  • Anonymous's avatar
    Anonymous
    8 years ago

    Ahhh, in that case, add this to the end of the code in the Advanced Editor for that step:

     

    , Int64.Type

     

    other common types you'll use are:

     

    "type text"

    "type date"

    "type datetime"

    "type number"

    Currency.Type

    Percentage.Type

     

    An easy way to see what the exact M code is to create a temporary step that changes the data type.  Then you'll see in the Advanced Editor exactly how M writes it (type number vs. Int64.Type...never figured out why).  Then you can simply use that same spelling as the 3rd parameter of Table.AddColumn().

4 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    If you want your measure to return a sum with no decimals, you can simply use:

     

    [Measure] := SUM( TableName[ColumnName] )

     

    Then go to the Modeling tab and choose "Whole Number" as the formatting option.

     

    You can also change the data type of columns in Query Editor.

    • Anonymous's avatar
      Anonymous
      Not applicable

      Chris, sorry if I wasn't clear but I'm working with M, not DAX. 

       

      When I'm using something like Table.AddColumn, the third argument is an optional column type. I want to specify that column type to be Int64 rather than number. 

      • Anonymous's avatar
        Anonymous
        Not applicable

        Ahhh, in that case, add this to the end of the code in the Advanced Editor for that step:

         

        , Int64.Type

         

        other common types you'll use are:

         

        "type text"

        "type date"

        "type datetime"

        "type number"

        Currency.Type

        Percentage.Type

         

        An easy way to see what the exact M code is to create a temporary step that changes the data type.  Then you'll see in the Advanced Editor exactly how M writes it (type number vs. Int64.Type...never figured out why).  Then you can simply use that same spelling as the 3rd parameter of Table.AddColumn().