6.3.3 既定の文字列表現
既定の文字列表現の形式に従った文字列定数を,次に示す定数として使用できます。
-
日付を表す定数
-
時刻を表す定数
-
時刻印を表す定数
ここでは,上記の既定の文字列表現の形式について説明します。
(1) 日付を表す既定の文字列表現
日付を表す既定の文字列表現には,既定の入力表現と既定の出力表現があります。
(a) 既定の入力表現
既定の入力表現の形式に従った文字列定数を,日付を表す定数として使用できます。日付を表す既定の入力表現の形式を次に示します。
- 既定の入力表現の形式:
-
'YYYY-MM-DD'または'YYYY/MM/DD'
-
年(YYYY)は4桁,月(MM)および日(DD)は2桁で表します。桁数が足りない場合は,足りない分,左側に0を補ってください。
-
YYYY,MM,DDには,データ型がDATE型のときに有効となる値(例えば,MMは01〜12)を指定してください。
-
- 例:
-
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のデータとして扱われます。
-
hh,mm,ss,nn...nには,データ型がTIME型のときに有効となる値(例えば,hhは00〜23)を指定してください。
-
- 例:
-
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-DDとhh: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のデータとして扱われます。
-
YYYY,MM,DD,hh,mm,ss,nn...nには,データ型がTIMESTAMP型のときに有効となる値(例えば,hhは00〜23)を指定してください。
-
- 例:
-
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'