Power Querydate格式

我正在使用Power Query来访问我的PostgreSQL数据库,并通过某些date参数筛选我的数据。 但是,对于我的一个数据库表格,date格式是YYYYMM (201510)。

是否有可能将此格式转换为实际的date格式?

Power Query将YYYY-MMYYYYMMDD识别为有效的date格式,但不是YYYYMM 。 这是一个插入连字符然后改变types的解决scheme:

  1. 按字符数分割文本,4
  2. 删除自动号码types推断步骤。
  3. 使用自定义分隔符合并列-
  4. 更改datetypes

这是一个简单的例子:

 let Source = Csv.Document("201510 201502"), SplitColumnByPosition = Table.SplitColumn(Source,"Column1",Splitter.SplitTextByPositions({0, 4}, false),{"Column1.1", "Column1.2"}), MergedColumns = Table.CombineColumns(SplitColumnByPosition,{"Column1.2", "Column1.1"},Combiner.CombineTextByDelimiter("-", QuoteStyle.None),"Merged"), ChangedType = Table.TransformColumnTypes(MergedColumns,{{"Merged", type date}}) in ChangedType 

请尝试:

 =DATE(LEFT(A1,4),RIGHT(A1,2),1) 
 select to_date('201510', 'YYYYMM'); to_date ------------ 2015-10-01 

在这种情况下,我宁愿创build一个新的自定义列,然后删除原始列。 在你的情况下,自定义列的公式如下所示:

 =Text.Range([DateColumn],0,4) & "-" & Text.Range([DateColumn],4,2) & "-01" 

添加自定义列后,可以将其格式更改为date。

有关进一步参考,请查看M公式参考: https : //msdn.microsoft.com/en-us/library/mt211003.aspx