sql >> Databáze >  >> RDS >> Sqlserver

Získejte datum zahájení a ukončení čtvrtletí z roku

select 
    dateadd(M, 3*number, CONVERT(date, CONVERT(varchar(5),@year)+'-1-1')),
    dateadd(D,-1,dateadd(M, 3*number+3, CONVERT(date, CONVERT(varchar(5),@year)+'-1-1'))),
    Number QuarterNo
from master..spt_values 
where type='p' 
and number between 1 and 4  

Pravděpodobně budete chtít použít data, nikoli datum a čas, jinak do vašeho čtvrtletí není zahrnuto nic ze dne posledního dne čtvrtletí (např.:2013-06-30 14:15)

Chcete-li jít jiným způsobem, použijte datepart

select ((DATEPART(q,@date)+2) % 4)+1


  1. Jak nainstalovat Npgsql jako poskytovatele dat pro ADO.NET Entity Framework?

  2. Požadavky na obnovu před zálohováním

  3. Vrátit všechny řádky z poddotazu SQL?

  4. Závažná chyba mysqli_connect:require()