[MSSQL] Jak zbadać parzystość rekordu w Select?

0

Cześć, chodzi o to, że mam dane z selecta, np:

Data       |        parzysty
-------------------------
blabla1     |     1
blabla2     |     0
blabla3     |     null 
blabla4     |     null

blabla to oczywiście jakiś DateTime.

Teraz chodzi o to, żeby w kolumnie parzysty uzyskać 1(parzysty) lub 0(nieparzysty) tam, gdzie są nulle.

Wiem, że muszę się posłużyć casem, ROW_NUMBER() i modulo 2, ale nie mam zielonego pojęcia jak to zrobić.

Mój główny problem polega na tym, że w select mam jakieś warunki, dodatkowo jest to widok, np:

SELECT data, (case parzysty is null then ..??.. else parzysty end) as parzysty
FROM V_WIDOK
WHERE jakies_warunki

Jak to zrobić?

0

Potrzebujesz jakiegoś pola, które można przekonwertować na int

SELECT data, (case when parzysty is null then ROW_NUMBER() OVER (ORDER BY Data) % 2 else parzysty end) as przysty
FROM V_WIDOK
WHERE jakies_warunki

1 użytkowników online, w tym zalogowanych: 0, gości: 1