ugrás a tartalomhoz

Rekord értékének növelése egy lépésben?

Fedor · 2006. Már. 7. (K), 16.32
Hali!

Egy e-mail küldő alkalmazáshoz kell egy egyszerűnek tűnő statisztikát készítenem. A form egy levelet generál, amelyet egy hirlistára küld el. Az a kérés, hogy legyen egy adminfelület, ahol követhetik a listán szereplő ügyfelek, hogy mennyi levelet kaptak eddig. Elvileg egyszerű a megoldás, egy adatbázistáblában (amely már eddig is tárol róluk mindenféle infót) létrehozok egy újabb oszlopot, alapérték 0, és minden levélküldéskor növelni kéne ezt az értéket 1-gyel. Igen ám, de hogyan? Ha egyesével lekérdezem az összes sorból, hogy mekkora az az érték, aztán azt növelem 1-gyel, és az új értékkel update-telem a sort, többszáz sornál már elég hosszú ideig tart. Az elegáns megoldás az lenne, egy MySQL paranccsal le lehetne tudni az egészet. Próbáltam utánanézni, de nem találtam hasonlót. Kitaláltam, hogy hátha működik az, ami a PHP-nál, és próbaként "kitaláltam" a következő MySQL parancsot:
UPDATE `partner_stat`  SET `hirlevel_stat`++  WHERE `hirlevel` =1
Sajnos túl szép lett volna, ha működik. :-)

Szerintetek? Maradnom kell az első, nehézkes megoldásnál, vagy tud valaki esetleg jobbat?
 
1

mezo_ertek=(mezo_ertek+1)

Dualon · 2006. Már. 7. (K), 16.38
UPDATE partner_stat SET hirlevel_stat=(hirlevel_stat+1) WHERE hirlevel=1
Nem vagyok benne biztos, hogy a zárójel kell; azt hiszem, csak megszokásból használom. :)

D.
http://e-arc.hu/
2

<Nincs cím>

toro · 2006. Már. 7. (K), 16.39
UPDATE partner_stat SET hirlevel_stat=hirlevel_stat+1 WHERE hirlevel =1
3

Köszönöm!

Fedor · 2006. Már. 7. (K), 16.45
Ez gyors volt, köszönöm. Kipróbáltam, bevált.

Üdv,
Fedor