CURRENT_TIMESTAMP (Transact-SQL)

現在の日付と時刻を返します。この関数は、GETDATE と等価な ANSI SQL です。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

CURRENT_TIMESTAMP

戻り値の型

datetime

解説

CURRENT_TIMESTAMP は非決定的関数です。この列を参照するビューと式には、インデックスを付けることができません。

日付関数は、SELECT ステートメントの選択リストまたはクエリの WHERE 句の中で使用できます。

レポートを作成する場合は、CURRENT_TIMESTAMP を使用して、レポートを作成するたびに現在のシステム上の日付と時刻を出力できます。CURRENT_TIMESTAMP は、特定のアカウントでトランザクションが発生した時刻をログに記録するなど、利用状況を監視する場合にも便利です。

A. CURRENT_TIMESTAMP を使用して現在の日付と時刻を返す

次の例では、CURRENT_TIMESTAMP の値と説明文を返します。

SELECT 'The current time is: '+ CONVERT(char(30), CURRENT_TIMESTAMP)

以下に結果セットを示します。

--------------------------------------------------- 
The current time is: Feb 24 1998  3:45PM            

(1 row(s) affected)

B. DEFAULT 制約として CURRENT_TIMESTAMP を使用する

次の例では、sales 行の sales_date 列に対する DEFAULT 制約として CURRENT_TIMESTAMP を使用するテーブルを作成します。

USE AdventureWorks;
GO
CREATE TABLE sales2
(
 sales_id int IDENTITY(10000, 1) NOT NULL,
 cust_id  int NOT NULL,
 sales_date datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
 sales_amt money NOT NULL,
 delivery_date datetime NOT NULL DEFAULT DATEADD(dd, 10, GETDATE())
)
GO
INSERT sales2 (cust_id, sales_amt)
   VALUES (20000, 550)

次のクエリでは、sales2 テーブルからすべての情報を選択します。

USE AdventureWorks;
GO
SELECT cust_id, sales_date 
FROM sales2;
GO

以下に結果セットを示します。

cust_id     sales_date
----------- -----------------------
20000       2005-03-09 15:13:45.017

(1 row(s) affected)

参照

関連項目

GETUTCDATE (Transact-SQL)
ALTER TABLE (Transact-SQL)
CREATE TABLE (Transact-SQL)
システム関数 (Transact-SQL)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手