ヘッダーをスキップ

Oracle TimesTen In-Memory Database APIおよびSQLリファレンス・ガイド リリース6.0 B25770-01 |
| 目次 | 索引

前へ | 次へ |

## EXTRACT

EXTRACT関数は、指定されたDateTimeフィールドの値を、DateTimeまたは時間隔の値の式からBIGINTやDECIMALとして抽出して返します。この関数は、DateTimeフィールドの値を非常に大きな表で操作する場合に役立つことがあります。

SQL構文
EXTRACT (DateTimeField FROM IntervalExpression | DateTimeExpression)

DateTimeField | IntervalExpressionまたはDateTimeExpressionから抽出されるフィールドです。指定できるフィールドは、YEAR、MONTH、DAY、HOUR、MINUTEまたはSECONDです。
IntervalExpression | 時間隔の結果です。
DateTimeExpression | DATE、TIMEまたはTIMESTAMP式です。

説明

- DateTimeフィールドとDateTimeまたは時間隔値の式を組み合せた結果が、あいまいになる場合があります。この場合、TimesTenではUNKNOWNが返されます。
- 抽出するフィールドは、IntervalExpressionまたはDateTimeExpressionのフィールドである必要があります。たとえば、DATE値からは、YEAR、MONTHおよびDAYのみを抽出できます。同様に、TIMEデータ型またはTIMESTAMPデータ型からは、HOUR、MINUTEまたはSECONDのみを抽出できます。
- 秒のフィールドはDECIMAL (40,4)値に抽出され、秒の小数部はこの小数部に保持されます。他のフィールドは、BIGINT値に抽出されます。

##### 例11.16

次に、秒のフィールドを時間隔の結果sysdate-t1.createTimeから抽出する例を示します。

    SELECT EXTRACT(SECOND FROM sysdate-t1.createTime) FROM t1;

##### 例11.17

次に、秒のフィールドをシステム表DUALのsysdateから抽出する例を示します。

    Select EXTRACT(SECOND FROM sysdate) from dual;