phpbar.de logo

Mailinglisten-Archive

Re: Werte einer Tabellenzelle zuweisen
Archiv Mailingliste mysql-de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Werte einer Tabellenzelle zuweisen



schon mal was von subselect gehört?

UPDATE  tab2  SET  stufa1=
(select tab1.stufa1 from tab1 WHERE tab1.id=tab2.id)
where id in (select id from tab1);

Wenn mehrere Spalten upgedatet werden sollen steht eine Klammer darum. Dann
muß das erste select in doppelten Klammern stehen.

Das zweite mit der in clause ist dafür, daß nur die ein update bekommen, für
die es einen Wert in tab1 gibt. Sonst wird da NULL reingeschrieben.
Beschleunigen kann man das übrigens, wenn tab1.id einen Index hat

-----Original Message-----
From: Peter Muessig-Trapp <muessig_(at)_his.de>
To: mysql-de_(at)_lists.4t2.com <mysql-de_(at)_lists.4t2.com>
Date: Wednesday, May 26, 1999 2:45 PM
Subject: Werte einer Tabellenzelle zuweisen


>
>
>Moin, moin,
>
>ich bin zu dem Schluss gekommen, dass es mit SQL-Mitteln
>keine Loesung fuer folgendes Problem gibt:
>
>ich habe 2 Tabellen:
>
>tab1: id, var1, var2, ..., stufa1
>tab2: id, var3, var4, ..., stufa1
>
>nun sollen der Wert in tab1.stufa1 nach tab2.stufa1
>geschrieben werden, wenn tab1.id = tab2.id ist.
>
>Sowas wie
>
>UPDATE
>   tab2
>SET
>   tab2.stufa1=tab1.stufa1
>WHERE
>   tab1.id=tab2.id
>
>funktioniert nicht;
>Fehlermeldung: "Unknown table 'tab2' in field list" (?)
>Die Tabelle existiert aber wohl!
>
>Gibts vielleicht doch irgendeine Loesung?
>
>Gruesse, Peter
>


Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive