17.10 - 例 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - データ タイプおよびリテラル

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1143-171K-JPN
Language
日本語 (日本)

例: TIMESTAMPデータ型

以下に示すのは、クエリーの中でTIMESTAMPを使用した例です。

SELECT item, quantity, saletime
FROM sales
WHERE saletime > TIMESTAMP '2000-08-25 10:14:59'
AND saletime < TIMESTAMP '2000-08-25 10:30:01';

例: 2つのTIMESTAMP型の相違

2つのTIMESTAMPタイプの間の差は間隔タイプになります。

まず、テーブルを次のように定義します。

CREATE TABLE BillDateTime
(phone_no CHARACTER(10)
,start_time TIMESTAMP(0)
,end_time TIMESTAMP(0));

次に差を計算し、その結果の間隔単位としてDAY TO SECONDを指定します。

SELECT (end_time - start_time) DAY(4) TO SECOND
FROM BillDateTime;

DAY(4)により4桁の精度を指定しており、最大値は9999日(約27年)になります。結果は次のようになります。

5 16:49:20.340000

例: 2つのTIMESTAMP値の比較

次の例は、2つのTIMESTAMP数値を比較して、その差が30分未満かどうかを調べるものです。

まず、テーブルを次のように定義します。

CREATE TABLE PhoneTime
(phone_no CHARACTER(10)
,start_time TIMESTAMP(0)
,end_time TIMESTAMP(0));

2つのTIMESTAMPタイプの間の差は、間隔タイプになります。

SELECT phone_no
FROM PhoneTime
WHERE (end_time - start_time) DAY(4) TO MINUTE > INTERVAL '30' MINUTE;