Hitachi

Hitachi Advanced Data Binder SQLリファレンス


6.3.3 既定の文字列表現

既定の文字列表現の形式に従った文字列定数を,次に示す定数として使用できます。

ここでは,上記の既定の文字列表現の形式について説明します。

〈この項の構成〉

(1) 日付を表す既定の文字列表現

日付を表す既定の文字列表現には,既定の入力表現と既定の出力表現があります。

(a) 既定の入力表現

既定の入力表現の形式に従った文字列定数を,日付を表す定数として使用できます。日付を表す既定の入力表現の形式を次に示します。

既定の入力表現の形式:
'YYYY-MM-DD'または'YYYY/MM/DD'
  • 年(YYYY)は4桁,月(MM)および日(DD)は2桁で表します。桁数が足りない場合は,足りない分,左側に0を補ってください。

  • YYYYMMDDには,データ型がDATE型のときに有効となる値(例えば,MM0112)を指定してください。

例:

2013年7月30日を表す場合,次のようになります。

  • 文字列定数(既定の入力表現)の場合:'2013-07-30'または'2013/07/30'

  • 日付定数の場合:DATE'2013-07-30'またはDATE'2013/07/30'

(b) 既定の出力表現

adbsqlコマンドなどで日付データを検索した結果は,既定の出力表現に従った形式で出力されます。

既定の出力表現の形式:
'YYYY-MM-DD'

年(YYYY)は4桁,月(MM)および日(DD)は2桁で出力されます。桁数が足りない場合は,足りない分,左側に0が補われます。

例:

日付データがX'20130730'の場合,既定の出力表現は次のようになります。

'2013-07-30'

(2) 時刻を表す既定の文字列表現

時刻を表す既定の文字列表現には,既定の入力表現と既定の出力表現があります。

(a) 既定の入力表現

既定の入力表現の形式に従った文字列定数を,時刻を表す定数として使用できます。時刻を表す既定の入力表現の形式を次に示します。

既定の入力表現の形式:
'hh:mm:ss.nn...n'
  • 時(hh),分(mm),および秒(ss)は2桁で表します。桁数が足りない場合は,足りない分,左側に0を補ってください。

  • 小数秒を使用する場合は,「.nn...n」を指定してください。nn...nは,3,6,9,または12桁で表します。nn...nが,3,6,9,または12桁以外の場合,次のように小数秒精度が仮定されます。その際,足りない桁数分だけ右側に0が補われます。

    nn...nの桁数

    仮定される小数秒精度

    1,2

    3

    4,5

    6

    7,8

    9

    10,11

    12

  • nn...nが13桁以上の場合は,エラーになります。

  • 秒と小数秒の間にピリオドが必要です。

  • 小数秒を使用しない場合は,「.nn...n」の指定は不要です。

  • nn...nを省略し,ピリオドだけを指定した場合は,小数秒精度が0のデータとして扱われます。

  • hhmmssnn...nには,データ型がTIME型のときに有効となる値(例えば,hhは0023)を指定してください。

例:

11時3分58.123456秒を表す場合,次のようになります。

  • 文字列定数(既定の入力表現)の場合:'11:03:58.123456'

  • 時刻定数の場合:TIME'11:03:58.123456'

(b) 既定の出力表現

adbsqlコマンドなどで時刻データを検索した結果は,既定の出力表現に従った形式で出力されます。

既定の出力表現の形式:
'hh:mm:ss.nn...n'
  • 時(hh),分(mm),および秒(ss)は2桁で出力されます。桁数が足りない場合は,足りない分,左側に0が補われます。

  • nn...nには小数秒が表示されます。時刻データの小数秒精度の指定に従って小数秒の桁数が決まります。

  • 小数秒精度が0の場合は,「.nn...n」の部分は表示されません。

例:

時刻データがX'110358123'の場合,既定の出力表現は次のようになります。

'11:03:58.123'

(3) 時刻印を表す既定の文字列表現

時刻印を表す既定の文字列表現には,既定の入力表現と既定の出力表現があります。

(a) 既定の入力表現

既定の入力表現の形式に従った文字列定数を,時刻印を表す定数として使用できます。時刻印を表す既定の入力表現の形式を次に示します。

既定の入力表現の形式:
'YYYY-MM-DD hh:mm:ss.nn...n'または'YYYY/MM/DD hh:mm:ss.nn...n'
  • 年(YYYY)は4桁で表します。月(MM),日(DD),時(hh),分(mm),および秒(ss)は2桁で表します。桁数が足りない場合は,足りない分,左側に0を補ってください。

  • YYYY-MM-DDhh:mm:ssの間に半角空白が必要です。

  • 小数秒を使用する場合は,「.nn...n」を指定してください。nn...nは,3,6,9,または12桁で表します。nn...nが,3,6,9,または12桁以外の場合,次のように小数秒精度が仮定されます。その際,足りない桁数分だけ右側に0が補われます。

    nn...nの桁数

    仮定される小数秒精度

    1,2

    3

    4,5

    6

    7,8

    9

    10,11

    12

  • nn...nが13桁以上の場合は,エラーになります。

  • 秒と小数秒の間にピリオドが必要です。

  • 小数秒を使用しない場合は,「.nn...n」の指定は不要です。

  • nn...nを省略し,ピリオドだけを指定した場合は,小数秒精度が0のデータとして扱われます。

  • YYYYMMDDhhmmssnn...nには,データ型がTIMESTAMP型のときに有効となる値(例えば,hh0023)を指定してください。

例:

2013年7月30日11時3分58.123456秒を表す場合,次のようになります。

  • 文字列定数(既定の入力表現)の場合:'2013-07-30 11:03:58.123456'または'2013/07/30 11:03:58.123456'

  • 時刻印定数の場合:TIMESTAMP'2013-07-30 11:03:58.123456'またはTIMESTAMP'2013/07/30 11:03:58.123456'

(b) 既定の出力表現

adbsqlコマンドなどで時刻印データを検索した結果は,既定の出力表現に従った形式で出力されます。

既定の出力表現の形式:
'YYYY-MM-DD hh:mm:ss.nn...n'
  • 年(YYYY)は4桁,月(MM),日(DD),時(hh),分(mm),および秒(ss)は2桁で出力されます。桁数が足りない場合は,足りない分,左側に0が補われます。

  • nn...nには小数秒が表示されます。時刻印データの小数秒精度の指定に従って小数秒の桁数が決まります。

  • 小数秒精度が0の場合は,「.nn...n」の部分は表示されません。

例:

時刻印データがX'20130730110358123'の場合,既定の出力表現は次のようになります。

'2013-07-30 11:03:58.123'