![]() |
MySQL: Lösung für Funktionalität $var .= "bla"; auf DB-Ebene
ich möchte mit MySQL auf DB-ebene das erreichen, was z.b. in perl oder php so ginge:
$var .= "bla"; es geht also darum, einen wert aus der DB auszulesen und ihm im gleichen atemzug etwas anzufügen. unter oracle funktioniert das über ein subquery z.b. so: Code:
UPDATE tabelle SET feld=(SELECT feld || 'bla' FROM tabelle WHERE id='118') Code:
UPDATE tabelle SET feld=(SELECT CONCAT(feld, 'bla') FROM tabelle WHERE id='118') #1093 - You can't specify target table 'tabelle' for update in FROM clause beklagt sich also darüber, daß ich in dieselbe tabelle schreiben will, aus der ich davor auslese (ich weiß ehrlich gesagt nicht, wo da das problem sein soll, aber bitte). weiß jemand, wie ich das unter MySQL machen kann? |
antwort: gar nicht
Currently, you cannot update a table and select from the same table in a subquery.
ich bin, muß ich gestehen, negativ überrascht. |
Code:
UPDATE `tabelle` SET `feld` = CONCAT(`feld`,'bla') WHERE `id`='118' LIMIT 1; |
jaaaa. danke :)
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 04:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag