Mysql: update s vyuzitim 2 a vice tabulek

Stanislav Meduna stano-cznews na meduna.org
Pondělí Červen 25 19:18:16 CEST 2001


On Mon, 25 Jun 2001 10:49:51 +0000 (UTC), Jan Bernard wrote:

: update table1 set table1.cena = table2.cena where blabla....

: je utopie a budu to muset resit na aplikacni urovni. Nebo se mylim?

Co server, to iny postup. Kedysi som si to napisal pre Oracle,
Access, PosgreSQL a MSDE. Pripadne chyby ospravedlnte,
mam to len na papieri.

Oracle:

UPDATE foo SET (foo.x) =
  (SELECT bar.y FROM bar WHERE foo.id = bar.id)
  WHERE id IN (2, 3)

Access:

UPDATE foo INNER JOIN bar ON foo.id = bar.id
  SET foo.x = bar.y WHERE bar.id IN (2, 3)

PostgreSQL a MSDE:

UPDATE foo set x=bar.y FROM bar
  WHERE foo.id = bar.id AND bar.id IN (2, 3)


Varianty pre kombinaciu viac tabuliek na "pravej" strane sa mi
opisovat nechce.  Ci to ide v Mysql netusim - mozno nieco
z vyssie uvedeneho zaberie.

Nech zije kompatibilita :-(

Zdravi
-- 
                                  Stano



Další informace o konferenci Test