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

SQL Server(T-SQL)で日付から年を抽出する3つの方法

    SQLServerの日付から年を返す方法はいくつかあります。これが3つです(または4つですか?)。

    YEAR()

    最も明白な方法は、YEAR()を使用することです。 働き。この関数は、指定された日付の年の部分を含む整数を返します。

    DECLARE @date date = '2020-10-25';
    SELECT YEAR(@date);

    結果:

    2020

    DATEPART()

    これを行う別の方法は、DATEPART()を使用することです。 働き。 YEAR()と同様 関数、DATEPART() また、結果を整数として返します。

    DECLARE @date date = '2020-10-25';
    SELECT DATEPART(year, @date);

    結果:

    2020

    または、最初の引数をyyにすることもできます。 またはyyyy 同じ結果を生成します。

    FORMAT()

    FORMAT() 関数は、結果を文字列( nvarchar )として返すため、前の2つとは少し異なります。 またはnull)。

    DECLARE @date date = '2020-10-25'
    SELECT FORMAT(@date, 'yyyy');

    結果:

    2020

    短い年

    FORMAT() この機能を使用すると、短い年(つまり、yy)を提供することもできます。

    例:

    DECLARE @date date = '1979-10-25'
    SELECT 
      FORMAT(@date, 'yyyy') AS [yyyy],
      FORMAT(@date, 'yy') AS [yy];

    結果:

    +--------+------+
     | yyyy   | yy   |
     |--------+------|
     | 1979   | 79   |
     +--------+------+ 

    1. oracle sqlから1行だけを選択するにはどうすればよいですか?

    2. CBO統計ホワイトペーパー

    3. ScaleGridは2017-2018クラウドアワードプログラムの最終候補になりました

    4. nullセーフな同等性チェックを実行するためのより優れたOracleオペレーターはありますか?