Mailinglisten-Archive |
Na, dann antworte ich mir mal selber - für Euch, fürs Archiv und die Nachwelt: Das Problem besteht darin, ein Update mit Werten zu machen, die durch einen Select erst ermittelt werden müssen. Bis MySQL 4.0 geht das nur über mehrere Queries und mit Hilfe temporärer Tabellen. Ab MySQL 4.1 gibt es Subselects, und genau ein solcher hilft hier: UPDATE artikel LEFT JOIN (SELECT DISTINCT ... as empfohlen, idartikel ...) as t on t.idartikel = artikel.idartikel SET artikel.empfohlen = t.empfohlen Für die UPDATE-Query gibt es also eine Tabelle t auf die gejoint wird und deren Wert übernommen wird. In der Subquery wird über den SELECT diese Tabelle als Ergebnis einer Abfrage aufgebaut. Tut und macht glücklich. Tobias -------------- nächster Teil -------------- Ein Dateianhang mit Binärdaten wurde abgetrennt... Dateiname : nicht verfügbar Dateityp : application/pgp-signature Dateigröße : 189 bytes Beschreibung: Dies ist ein digital signierter Nachrichtenteil URL : http://lists.mushaake.org/pipermail/mysql-de/attachments/20060530/0a4f67ab/attachment-0001.bin
php::bar PHP Wiki - Listenarchive