अगर आप उन्हें सिर्फ नंबर देना चाहते हैं, तो मैं lag()
. का सुझाव दूंगा संचयी राशि के साथ:
select t.*,
sum(case when datefrom = dateadd(day, 1, prev_dateto
then 0 else 1
end) over (order by itemId, datefrom)
from (select t.*,
lag(dateto) over (partition by itemid order by datefrom) as prev_dateto
from table t
) t;
case
निर्धारित करता है कि एक नया द्वीप कहाँ से शुरू होता है। संचयी योग केवल इस ध्वज का योग है।