Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

in PowerQueryEditor, Convert DateTime to YYYMM

I am reading a table from SQL Server and I need to convert a datetime column to YYYYMM. or YYYY-MM.  Intellisense is not helping much.  My last failed attempt was this:

 

= Table.AddColumn(dbo_OLAPJobHistory, "dtRunMonth", format('dbo_OLAPJobHistory'[dtRunDate],"YYYYMM"))

 

Help?

  • Anonymous's avatar
    Anonymous
    4 years ago

    Unfortunately, this leaves  you with a text field.  If you want it to be useable as a date:

    From the Power Query Editor, add a new column as beginning of month:

    Table.AddColumn(#"Filtered Rows", "dtStartOfMonth", each Date.StartOfMonth([dtRunDate]), type datetime)

    From the Data View, format the date using yyyy-mm:

    dtRunMonth = FORMAT(OLAPJobHistory[dtStartOfMonth],"yyyy-mm")

     

6 Replies

    • Anonymous's avatar
      Anonymous
      Not applicable

      That makes sense, except I am having trouble with the addcolumn syntax.  I stepped thru the "Custom Column" in the Power Query Editor and it built this, which throws an error:

       

      = Table.AddColumn(dbo_OLAPJobHistory, "dtRunMonth", each DateTime.ToText(dbo_OLAPJobHistory[dtRunDate],"YYYYMM"))

       

      What am I missing? 

       

      • bcdobbs's avatar
        bcdobbs
        Community Champion

        I'm not by a computer but I think your problem is power query doesn't want the table reference in front of the colum (that's dax syntax).

         

        try 

         

        [dtRunDate] instead of dbo_OLAPJobHistory[dtRunDate]