Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak mogę uzyskać ostatnie 12 miesięcy od aktualnej daty PLUS dodatkowe dni do 1 dnia ostatniego miesiąca?

SELECT dateadd(month,datediff(month,0,getdate())-12,0)

Wynik to

-----------------------
2014-08-01 00:00:00.000

Więc klauzula where powinna być

WHERE datecol >=dateadd(month,datediff(month,0,getdate())-12,0)

aby uzyskać wszystkie dane począwszy od 01 stycznia ubiegłego roku tego samego miesiąca



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dodaj klauzule WHERE do SQL dynamicznie / programowo

  2. Funkcja SQL group_concat w SQL Server

  3. Ograniczenie sprawdzania nakładania się zakresu dat

  4. Jak generować etykiety dynamiczne i używać nazwy kolumny i wartości jako tekstu

  5. SQL Server dodaje automatyczny klucz podstawowy do istniejącej tabeli