О, я думаю, что понимаю правило.
«Для каждого типа лекарства в каждую дату серийный номер должен увеличиваться в алфавитном порядке».
Хорошо.
select ID,
[Date],
Typ,
Drug,
Sno = row_number() over (partition by Date, Typ order by Drug asc)
from YourTable
Если вам также нужно разделить по ID, укажите это также:
select ID,
[Date],
Typ,
Drug,
Sno = row_number() over (partition by ID, Date, Typ order by Drug asc)
from YourTable