Skip to main content

【ファイルに日付列がないデータを取り込む方法】

 

Datoramaへデータを取り込むためには、日付データ必須(ディメンションのみデータを除く)となりますが、ファイルに日付列がない場合でも日付データを取り込む方法を紹介します。

 

日付関数を使用する

TODAY()、YESTERDAY(), DATEADD() 関数などの日付関数使用して日付データを取り込めます。

 

  • TODAY()

アップロード当日の日付がファイルに追加されます。

 

  • DATEADD(interval,number,date)

間隔として指定したEntityに応じて、日付から時間を増減します(「'd'」によって日や週などが増減されます)。 

下記の式では昨日の日付が取得されます:

DATEADD('d',-1,TODAY())

 下記の式では先月の日付が取得されます:

DATEADD('m',-1,TODAY())

 

  • DATE(year,month,day)

DATE関数には任意の日付を入力します。

DATE(2015,06,01)

 

ファイルの名前を参照する

  • ファイル名に日付を含めることができれば、env['filename']関数を使用し、ファイル名から日付を取得することができます。

 ファイル名:rawdara_20220401.csv

PARSEDATE(RIGHT(env['filename'],8),'yyyyMMdd')

※RIGHT関数は、参照したテキストの右から指定された数の文字を返します。

 

 ファイル名:rawdara_2022-04-01.csv

PARSEDATE(EXTRACT(env['filename'],'_',1),'yyyy-MM-dd')

 ※EXTRACT関数は区切り文字と位置に応じて、参照した文字列から部分文字列を取得し、一番左の位置を「0」とします。区切り文字は文字列の各部分を区切る文字であり、位置は区切り文字で区切られた部分です。

 

 ファイル名:rawdara_04-01-2222.csv

PARSEDATE(SELECT(env['filename'],'\\d{2}-\\d{2}-\\d{4}'),'MM-dd-yyyy')

※SELECT関数は特定のパターンや文字に応じて、参照した文字列から部分文字列を取得します。 この関数は複数の正規表現の使用に対応しており、上記の例では「##-##-####」(2桁-2桁-4桁)のパターンが取得されます。構文に含まれる「d」は「digit(桁)」を表し、波括弧内の数字は桁数を示します({2}など)。区切り文字はパターンの位置に応じて挿入されます。この構文ではパターンの桁数や区切り文字の位置がデータに合わせて変更できます。正規表現に詳しくない場合は、この記事で解説されている他のオプションの使用をおすすめします。

0/9000