Mailinglisten-Archive |
Lieber Bobby,
>wie kann ich mySQL-Querys mit IF/ELSE verschachteln?
>tabelle(Dokument,Date,Anzahl)
>Ich brauche sowas wie :
>IF(SELECT Date, Dokument FROM tabelle WHERE Date='$dat' AND
Dokument='$doku')
> UPDATE tabelle SET Anzahl='$anz' WHERE Date='$dat' AND
>Dokument='$doku'
>ELSE
> INSERT INTO tabelle (Date,Dokument,Anzahl) VALUES
>('$dat','$doku','$anz')
SQL ist eine nicht-prozedurale Sprache und kennt nur in sehr geringem
Umfang Kontrollstrukturen wie IF. Für solche nimmt man z. B. PHP ;-)
Richtig sieht die Sache also so aus:
$result = mysql_query("SELECT Date, Dokument FROM tabelle WHERE
Date='$dat' AND Dokument='$doku'");
$schonda = mysql_affected_rows($result);
if ($schonda) { $sql = "UPDATE tabelle SET Anzahl='$anz' WHERE
Date='$dat' AND Dokument='$doku'"; }
else { $sql = "INSERT INTO tabelle (Date,Dokument,Anzahl) VALUES
('$dat','$doku','$anz')"; }
mysql_query($sql);
Regards,
--
Stefan Hinz
Geschäftsführer / CEO iConnect e-commerce solutions GmbH
# www.js-webShop.com www.iConnect.de
# Gustav-Meyer-Allee 25, 13355 Berlin
# Tel: +49-30-46307-382 Fax: +49-30-46307-388
php::bar PHP Wiki - Listenarchive