Forum Discussion

Syndicate_Admin's avatar
Syndicate_Admin
Administrator
4 years ago
Solved

en PowerQueryEditor, convertir DateTime a AAAAMM

Estoy leyendo una tabla de SQL Server y necesito convertir una columna datetime a AAAAMM. o AAAA-MM. Intellisense no está ayudando mucho. Mi último intento fallido fue este:

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

¿Ayuda?

  • Syndicate_Admin's avatar
    Syndicate_Admin
    4 years ago

    Esto funcionó para mí:

    = Table.AddColumn(dbo_OLAPJobHistory, "dtRunMonth", cada DateTime.ToText([dtRunDate],"aaaaMM"))

    Gracias

  • Syndicate_Admin's avatar
    Syndicate_Admin
    4 years ago

    Desafortunadamente, esto te deja con un campo de texto. Si quieres que sea utilizable como fecha:

    Desde el Editor de Power Query, agregue una nueva columna a principios de mes:

    Table.AddColumn(#"Filas filtradas", "dtStartOfMonth", cada Date.StartOfMonth([dtRunDate]), escriba datetime)

    En la vista de datos, formatee la fecha usando aaaa-mm:

    dtRunMonth = FORMATO(OLAPJobHistory[dtStartOfMonth],"aaaa-mm")

6 Replies

    • Syndicate_Admin's avatar
      Syndicate_Admin
      Administrator

      Eso tiene sentido, excepto que estoy teniendo problemas con la sintaxis de la columna adicional. Pasé por la "Columna personalizada" en el Editor de Power Query y construyó esto, lo que arroja un error:

      = Table.AddColumn(dbo_OLAPJobHistory, "dtRunMonth", cada DateTime.ToText(dbo_OLAPJobHistory[dtRunDate],"AAAAMM"))

      ¿Qué me estoy perdiendo?

      • Syndicate_Admin's avatar
        Syndicate_Admin
        Administrator

        No soy por una computadora, pero creo que su problema es que power query no quiere la referencia de la tabla frente al colum (eso es sintaxis dax).

        probar

        [dtRunDate] en lugar de dbo_OLAPJobHistory[dtRunDate]