sql >> データベース >  >> RDS >> Sqlserver

SQL Server(T-SQL)でのCURRENT_TIMESTAMPの例

    CURRENT_TIMESTAMP 関数は現在の日付と時刻を日時として返します 価値。この値は、SQLServerのインスタンスが実行されているコンピューターのオペレーティングシステムから取得されます。

    この関数は、T-SQL GETDATE()と同等のANSISQLです。 機能するので、好きなものを使うことができます。どちらの関数も、T-SQL SYSDATETIME()よりも日付範囲が低く、デフォルトの分数精度が低いことに注意してください。 関数( datetime2(7)を返します 値)。

    この記事では、CURRENT_TIMESTAMPの例を紹介します。 関数。他の関数と一緒に使用して、関心のある値を返す方法を含みます。

    構文

    構文は次のようになります:

    CURRENT_TIMESTAMP

    したがって、引数なしでこの関数を呼び出すだけです。

    SELECTを使用する基本的な例を次に示します。 CURRENT_TIMESTAMPから現在の日付と時刻を返すステートメント :

    SELECT CURRENT_TIMESTAMP AS Result;

    結果:

    +-------------------------+
    | Result                  |
    |-------------------------|
    | 2018-06-16 00:06:36.740 |
    +-------------------------+

    日付の一部を抽出

    戻り値の一部のみが必要な場合は、DATEPART()を使用できます。 興味のある日時のその部分だけを返します。

    例:

    SELECT DATEPART(month, CURRENT_TIMESTAMP) AS Result;

    結果:

    +----------+
    | Result   |
    |----------|
    | 6        |
    +----------+

    MONTH()を使用した別の例を次に示します。 働き。結果は同じです。

    SELECT MONTH(CURRENT_TIMESTAMP) AS Result;

    結果:

    +----------+
    | Result   |
    |----------|
    | 6        |
    +----------+

    これらの関数は両方とも現在の月を返します。ただし、月番号を表す整数として返されます。

    月の名前が必要な場合 代わりに、DATENAME()を使用できます。 :

    SELECT DATENAME(month, CURRENT_TIMESTAMP) AS Result;

    結果:

    +----------+
    | Result   |
    |----------|
    | June     |
    +----------+
    

    日付をフォーマットする

    他のT-SQL関数を使用して、必要に応じて日付をフォーマットすることもできます。

    FORMAT()の使用例を次に示します。 結果をフォーマットする関数:

    SELECT 
        FORMAT(CURRENT_TIMESTAMP, 'd', 'en-US') AS 'd, en-US',
        FORMAT(CURRENT_TIMESTAMP, 'd', 'en-gb') AS 'd, en-gb',
        FORMAT(CURRENT_TIMESTAMP, 'D', 'en-US') AS 'D, en-US',
        FORMAT(CURRENT_TIMESTAMP, 'D', 'en-gb') AS 'D, en-gb';

    結果:

    +------------+------------+-------------------------+--------------+
    | d, en-US   | d, en-gb   | D, en-US                | D, en-gb     |
    |------------+------------+-------------------------+--------------|
    | 6/16/2018  | 16/06/2018 | Saturday, June 16, 2018 | 16 June 2018 |
    +------------+------------+-------------------------+--------------+

    SQLServerで日付と時刻をフォーマットする方法のその他の例。

    値を増やして違いを見つける

    DATEDIFF()のような関数を使用できます 現在の日付と別の日付の差を返します。

    DATEADD()の使用例を次に示します。 現在の日付に月を追加してから、日数の違いを確認するには:

    DECLARE @date1 datetime2 = CURRENT_TIMESTAMP;
    DECLARE @date2 datetime2 = DATEADD(month, 1, CURRENT_TIMESTAMP);
    SELECT DATEDIFF(day, @date1, @date2) AS Result;

    結果:

    +----------+
    | Result   |
    |----------|
    | 30       |
    +----------+


    1. MySQLINステートメントのPDOバインディング値

    2. SQLServer更新データベース統計

    3. MySQL-郵便番号を0でフロントパッドする方法は?

    4. PostgreSQLのチューニング:パフォーマンスを向上させるための重要事項