UPDATE Problem(chen)

UPDATE Problem(chen)

am 02.05.2007 15:20:47 von Ben Butschko

Moin,

ich möchte gerne Werte in einer Tabelle (PRODUCTS) aus Spalte A (MODEL)
und Spalte B (PRODUCER) zusammen
mit einem Text in Spalte C (BEZEICHNUNG) schreiben.

Ich habe es mit einem Update probiert, allerdings ergibt es einen SQL
Fehler und da hänge ich fest.

Wo liegt der Fehler und wie muss die Abfrage lauten?

Lösungsvorschläge bedanke ich mich schonmal :-)

Netten Gruß,
Ben

Hier mein SQL:

UPDATE products SET Bezeichnung=concat_ws('Drucker ', producer, model)
WHERE model LIKE '10%'

So soll es ausshen:

Sprich: Model und producer zusammen mit dem Wort "Drucker" in die neu
erstellte Spalte FULLNAME.

Vorher:
+------+------+-------+| MODEL| PRODUCER || 10 | mustermann ||
101 | musterfrau
|Nachher:+------+------+---------------------------------+| MODEL|
PRODUCER | FULLNAME | | 10 | mustermann | Drucker
mustermann 10 || 101 | musterfrau | Drucker musterfrau 101 |

Re: UPDATE Problem(chen)

am 02.05.2007 15:49:38 von B.Steinbrink

On Wed, 02 May 2007 15:20:47 +0200, Ben Butschko wrote:

> Moin,
>
> ich möchte gerne Werte in einer Tabelle (PRODUCTS) aus Spalte A (MODEL)
> und Spalte B (PRODUCER) zusammen
> mit einem Text in Spalte C (BEZEICHNUNG) schreiben.
>
> Ich habe es mit einem Update probiert, allerdings ergibt es einen SQL
> Fehler und da hänge ich fest.
>
> Wo liegt der Fehler und wie muss die Abfrage lauten?

Wie lautet der Fehler denn überhaupt?

> Lösungsvorschläge bedanke ich mich schonmal :-)
>
> Netten Gruß,
> Ben
>
> Hier mein SQL:
>
> UPDATE products SET Bezeichnung=concat_ws('Drucker ', producer, model)
> WHERE model LIKE '10%'

CONCAT_WS(' ', 'Drucker', producer, model)
oder
CONCAT('Drucker ', producer, model)

dürfte eher zum gewünschten Ergebnis führen ;)

>
> So soll es ausshen:
>
> Sprich: Model und producer zusammen mit dem Wort "Drucker" in die neu
> erstellte Spalte FULLNAME.

"FULLNAME" kommt in deinem Query gar nicht vor, und wenn du eine neue
Spalte haben willst, musst du die schon vorher mit ALTER TABLE anlegen,
UPDATE ändert nur den Wert.

Und warum muss das überhaupt statisch in der Tabelle rumliegen? Das kann
doch genausogut aus den Komponenten zur Zeit der Abfrage zusammengesetzt
werden, dann gibt's auch garantiert keine Inkonsistenzen zwischen Model/
Producer auf der einen und "FULLNAME" auf der anderen Seite.

Björn