Pogledajte određenu poruku
Staro 30. 04. 2008.   #10
degojs
I'm a PC too.
Wrote a book
 
Avatar degojs
 
Datum učlanjenja: 05.06.2005
Lokacija: Kanada
Poruke: 1.354
Hvala: 82
130 "Hvala" u 89 poruka
degojs će postati "faca" uskorodegojs će postati "faca" uskoro
Default

Jes vala, morao bi malo da probavaš da vidiš ima li neki šablon

A mogao bi i drugačije i naokolo: da napraviš svaki put privremenu tabelu (možda čak u memoriji) i da za nju izvršiš odgovarajuće INSERT i DELETE id-ova.

Npr ako imaš ovako pravila:

1. Allow All: SELECT Id FROM t1 WHERE 1=1 -> i sad te IDjeve INSERTuješ u tu privremenu ("temp") tabelu, ne znam sad koja je sintaksa za MySQL da radi SELECT i INSERT u jednom upitu, verujem da ima, sve baze to imaju

2. Deny 1,4,6: DELETE FROM temp WHERE ID IN (1,4,6)

3. Allow 7,4,3: INSERT INTO temp WHERE ID IN (7,4,3)

I tako redom. I na kraju ti u toj temp tabeli ostanu IDjevi koje trebaš.

E sad, ono prvo pravilo može da povuče dosta ID-jeva, pa možeš malo da optimizuješ logiku pa da ni ne radiš taj prvi upit, već da beležiš šta se uklanja iz skupa svih ID-jeva, itd. U stvari možda ti ni ne treba baza i privremena tabela za to onda, već da radiš sa nizom/kolekcijom/skupovima..?
__________________
Commercial-Free !!!

Poslednja izmena od degojs : 30. 04. 2008. u 21:43.
degojs je offline   Odgovorite uz citat