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

Porównywanie wierszy bieżącego miesiąca i poprzedniego miesiąca w kolumnie, SQL Server 2012

Myślę, że możesz użyć takiego zapytania:

SELECT *,
    CASE 
        WHEN Active <> 0 AND 
             ISNULL(LAG(Active) OVER (PARTITION BY LocationCode ORDER BY YearMonth), 0) = 0 THEN 1 
        ELSE 0 
    END As New
FROM yourTable;

[Demo SQL Fiddle]



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak wysłać zapytanie do tabeli SQL i usunąć zduplikowane wiersze z zestawu wyników?

  2. Muszę utworzyć widok łączący wszystkie tabele na podstawie ich prefiksu (nowe tabele dodawane co miesiąc)

  3. Jak uniknąć sytuacji wyścigu bazy danych podczas ręcznego zwiększania PK nowego wiersza?

  4. Jak ROW_NUMBER() działa w SQL Server

  5. Domyślna nazwa instancji SQL Server Express