プライマリ・コンテンツに移動
Oracle® Big Data Discovery Cloud Service Studioユーザー・ガイド

E65365-05
目次へ
目次
索引へ移動
索引

前
次
機械翻訳について

日付関数

日付関数は、特定の日付から月の情報を取得したり、日付に時間を追加するなど、日付オブジェクトに対するアクションを実行します。

この表は、「変換」でサポートされる日付関数を示しています。 「変換APIリファレンス」 (Groovydoc)では、同じ機能を説明しています。

日付書式は、JavaのSimpleDateFormatクラスに準拠します。 SimpleDateFormatクラスの詳細は、を参照してください : http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html

ユーザー関数 戻りデータ型 説明
addTime(Date attribute, Integer timeToAdd, String timeUnit) Date 日付オブジェクトに時間を追加します。 使用される時間単位は、次の定数のいずれかである必要があります:
  • MILLISECONDS
  • SECONDS
  • MINUTES
  • HOURS
  • DAYS
  • WEEKS
  • MONTHS
  • YEARS
diffDates(Date firstDate, Date secondDate, String timeUnit, Boolean precisionFlag) Double 特定の時間単位の2つの日付の差を計算します。 時間単位は、次の定数のいずれかである必要があります:
  • MILLISECONDS
  • SECONDS
  • MINUTES
  • HOURS
  • DAYS
  • WEEKS
  • MONTHS
  • YEARS

precisionFlagオプション・パラメータは、精度がミリ秒の場合の差異を取得するかどうかを指定します。 使用しない場合、falseにデフォルト設定されます。

getDayOfMonth(Date attribute, String timeZone, String locale) Integer 日付の月の日の値を返します。 タイム・ゾーンとロケールはオプション・パラメータとして指定でき、デフォルトはそれぞれnull"en"です。
getDayOfWeek(Date attribute, String timeZone, String locale) Integer 日付の曜日の値を返します。 タイム・ゾーンとロケールはオプション・パラメータとして指定でき、デフォルトはそれぞれnull"en"です。
getDayOfYear(Date attribute, String timeZone, String locale) Integer 日の年の日の値を返します。 タイム・ゾーンとロケールはオプション・パラメータとして指定でき、デフォルトはそれぞれnull"en"です。
getHour(Date attribute, String timeZone, String locale) Integer 日付の時間の値を戻します。 タイム・ゾーンとロケールはオプション・パラメータとして指定でき、デフォルトはそれぞれnull"en"です。
getMilliSecond(Date attribute, String timeZone, String locale) Long 指定したタイムゾーンおよびロケール・パラメータに基づいて、日付のミリ秒の値を返します。 デフォルトはそれぞれnull"en"です。
getMinute(Date attribute, String timeZone, String lcoale) Integer 日付の分の値を戻します。 タイム・ゾーンとロケールはオプション・パラメータとして指定でき、デフォルトはそれぞれnull"en"です。
getMonth(Date attribute, String timeZone, String locale) Integer 日付の月の値を戻します。 タイム・ゾーンとロケールはオプション・パラメータとして指定でき、デフォルトはそれぞれnull"en"です。
getSeconds(Date attribute, String timeZone, String locale) Long 日付の秒の値を戻します。 タイム・ゾーンとロケールはオプション・パラメータとして指定でき、デフォルトはそれぞれnull"en"です。
getYear(Date attribute, String timeZone, String locale) Integer 日付の年の値を戻します。 タイム・ゾーンとロケールはオプション・パラメータとして指定でき、デフォルトはそれぞれnull"en"です。
isDate(String attribute, String dateFormat) Boolean 文字列が特定の書式を持つ有効な日付値かどうかを判断します。
toDate(Long epochDate) Date LongをDateオブジェクトに変換します。
toDate(String attribute, String dateFormat), String timeZone, String locale Date 特定の日付書式を使用して、文字列を日付オブジェクトに変換します。 タイム・ゾーンとロケールはオプション・パラメータとして指定でき、デフォルトはそれぞれnull"en"です。 無効な日付文字列はnullを戻します。
today(String timeZone, String locale) Date 現在の日付を返します。 タイム・ゾーンとロケールはオプション・パラメータとして指定でき、デフォルトはそれぞれnull"en"です。
toString(Date date, String dateFormat, String locale) String 日付を文字列に変換します。 日付書式と、DATEFORMAT_DEFAULT"en"にデフォルトで設定されているロケールをそれぞれ指定する必要があります。
truncateDate(Date date, String timeUnit) Date 指定された時間単位に基づいて日付を切り捨てます。 使用される時間単位は、次の定数のいずれかである必要があります:
  • MILLISECONDS
  • SECONDS
  • MINUTES
  • HOURS
  • DAYS
  • WEEKS
  • MONTHS
  • YEARS

たとえば、truncateDate((toDate("2015/03/31 21:34:56")),MONTHS)2015-03-01 00:00:00 UTCを戻します。

日付定数

日付定数は、デフォルトの日付書式と、Date関数に渡すことができる時間単位を定義します。

この表は、「変換」でサポートされる日付定数を示しています。

定数名 データ型 説明
DATEFORMAT_DEFAULT Object デフォルトの日付書式を定義 : "yyyy/MM/dd HH:mm:ss"
DAYS Object 日数の定数を定義: "days"
HOURS Object 時間の定数を定義: "hours"
MILLISECONDS Object ミリ秒の定数を定義: "milliseconds"
MINUTES Object 分の定数を定義: "minutes"
MONTHS Object 月の定数を定義: "months"
SECONDS Object 秒の定数を定義: "seconds"
WEEKS Object 週の定数を定義: "weeks"
YEARS Object 年の定数を定義: "years"

例20-7 日付抽出の例

この例では、年月を取り出します。
toString(pickup_datetime, 'yyyy-MM')

例20-8 日付計算の例

次のコードは、diffDates関数を使用して、pickup_datetimeへの日数を計算します:

diffDates(today(),pickup_datetime,DAYS,true)

today()によって現在の日付が取得され、pickup_datetimeがピック・アップ日、DAYSは結果を返す時間単位を指定、trueは精度で差異を計算することを指定します。

例20-9 toDateの例

この例では、最初にtoLong関数を使用してStringをLongに変換してから、その結果をtoDate関数の入力として使用します:
toDate(toLong("1240596879"))
次に、toDate関数の日付書式の例を示します:
toDate(date_String,'EEE MM/DD/YYYY hh:mm:ss a')
toDate(date_String,'EEE MM/DD/YYYY hh:mm:ss a','EST')
toDate(date_String,'EEE MM/DD/YYYY hh:mm:ss a','Etc/GMT-10')
toDate(date_String,'EEE MM/DD/YYYY hh:mm:ss a','Etc/Universal','en'))
toDate(date_String,'EEE MM/DD/YYYY hh:mm:ss a','GMT0','de'))
toDate(date_String,DATEFORMAT_DEFAULT)
toDate(date_String,DATEFORMAT_DEFAULT,'EST')
toDate(date_String,DATEFORMAT_DEFAULT,'Etc/GMT-10')