Numéro de lot incrémentiel SQL SELECT toutes les X lignes

J'essaie d'écrire une requête SQL SELECT qui a une colonne de numéro de lot qui incrémente toutes les 5 lignes, j'ai essayé d'utiliser une division entière hacky sur un numéro de ligne dynamic, mais je ne peux pas contourner le premier numéro de lot 4 rangées au lieu de 5 (voir image).

RowNumber 1-5 devrait être 1, 6-10 devrait être 2 etc.

Des idées comment je peux y parvenir?

select * ROW_NUMBER() OVER (Order by (select 0)) AS RowNumber, 1 + convert(int, (ROW_NUMBER() OVER (Order by (select 0)) / 5)) as BatchNumber, * from WorkQueue 

entrez la description de l'image ici

Cela devrait fonctionner:

 select ROW_NUMBER() OVER (Order by (select 0)) AS RowNumber, (case when convert(int, (ROW_NUMBER() OVER (Order by (select 0)) % 5))=0 then 0 else 1 end) + convert(int, (ROW_NUMBER() OVER (Order by (select 0)) / 5)) as BatchNumber, * from WorkQueue 

Essaye ça:

 SELECT ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS RowNumber, CEILING(CAST(ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS DECIMAL(10,2))/5) AS BatchNo, * FROM WorkQueue