sql >> Databáze >  >> RDS >> Mysql

Jak získat ID posledního aktualizovaného řádku v MySQL?

Našel jsem odpověď na tento problém :)

SET @update_id := 0;
UPDATE some_table SET column_name = 'value', id = (SELECT @update_id := id)
WHERE some_other_column = 'blah' LIMIT 1; 
SELECT @update_id;

UPRAVIT od aefxx

Tuto techniku ​​lze dále rozšířit a získat ID každého řádku ovlivněného příkazem aktualizace:

SET @uids := null;
UPDATE footable
   SET foo = 'bar'
 WHERE fooid > 5
   AND ( SELECT @uids := CONCAT_WS(',', fooid, @uids) );
SELECT @uids;

To vrátí řetězec se všemi ID spojenými čárkou.



  1. Vytvoření časovače v Oracle Forms / Forms 6i a zobrazení hodin

  2. Jak automatizovat selhání databáze pomocí ClusterControl

  3. Asynchronní replikace Automatické převzetí služeb při selhání v MySQL 8.0.22

  4. XMLtable s Oracle 11g