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;
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;
Jak wysłać zapytanie do tabeli SQL i usunąć zduplikowane wiersze z zestawu wyników?
Muszę utworzyć widok łączący wszystkie tabele na podstawie ich prefiksu (nowe tabele dodawane co miesiąc)
Jak uniknąć sytuacji wyścigu bazy danych podczas ręcznego zwiększania PK nowego wiersza?
Jak ROW_NUMBER() działa w SQL Server
Domyślna nazwa instancji SQL Server Express