Jedan njegov deo azurira tabelu stranaka cija je struktura
Stranke
-------
stranka_jmbg - nvarchar(13)
datum_prijema - date
redni_broj - smallint
Svakog dana, ispocetka, stranke se primaju i pocinju od rednog broja 1 i svaka sledeca dobija broj uvecan za 1.
Problem je u tome sto se neke stranke vrate i zele da odustanu. One se brisu i njihovo mesto je upraznjeno.
Prazna mesta je potrebno popuniti sa novopridoslom strankom.
Da bi resio problem, uveo sam pomocnu tabelu Brojevi :
Brojevi
-------
Broj - smallint
Tabela ima 1000 slogova sa vrednostima od 1 - 1000.
Upitom :
select min(Broj) as SledeciBroj from Brojevi left join (select Redni_broj as BrojUzorka from Stranke where Datum_prijema = '" & TekuciDan & "' Tmp on Tmp.BrojUzorka = Brojevi.Broj where Tmp.BrojUzorka IS NULL
gde je TekuciDan = tekuci radni dan - datum.
Ovo mi daje sledeci slobodan broj uzimajuci u obzir i praznine nastale brisanjem, ali mi se cini da je malo "grubo" ...
Kako bi se ovo moglo napisati, a da bude sto brze za izvodjenje.
Hvala ...