Mailinglisten-Archive |
Hallo deutschsprachige, Am Mittwoch, 10. September 2003 um 00:52 schriebst du: > André Frimberger schrieb, >> jo, is klar... >> WHERE kann auch immer nur einmal in einem SQL Statement stehen. >> du kannst entweder folgendes machen: >> UPDATE table SET status = 0 WHERE id=1 OR id=2 OR id=3; > klappt also nicht, wenn status verschiedene werte hat? Nein, nicht in einem Query. >> oder >> du machst für jeden Datensatz nen eigenen Query. > ist das realistisch? > die tabelle ist ja durchaus realistisch, zb. mailinglisten usw. > wie wird das denn gemacht, wenn das größer wird? Musst du ja idR nicht. Wenn du z.B. wie hier boolesche Werte ändern möchtest brauchst du genau 2 Queries: UPDATE table SET status = 0 WHERE id=1 OR id=3 OR id=5 OR [naundsoweiter] UPDATE table SET status = 1 WHERE id=2 OR id=4 OR id=6 OR [naundsoweiter] Die verschiedenen "Untergruppen/Teilmengen" solltest du ja wissen respektive ermitteln können. Dann ist das auch kein Problem. Du musst also nicht pro Datensatz, sondern pro Wertalternative ein Query machen. Und wenn das Performanceprobleme gibt würde ich erstmal überlegen ob das die richtige Lösung ist; Da müsstest du schon sehr viele Alternativwerte haben... >> was hat das jetzt mit count(*) zu tun ? *grübel* > naja .. COUNT ( * ) = Anzahl der Datensätze und ich wollte ja > wissen, ob ich es x mal ( wobei COUNT ( * ) AS x ;) ) machen muss Schon klar, aber das brauchst du nicht. Du solltest nur darauf achten, im PHP alle Datensätze zu erfassen und dem richtigen der beiden Queries zuzuordnen ;) >> HTH dito liebe Grüsse, Kiko -- cause nonsense is better than no sense at all... christoph starkmann phone:0179-1162652 mailto:kiko at gruppe-69.com http://www.webspline.de --
php::bar PHP Wiki - Listenarchive