Mysql
 sql >> Datenbank >  >> RDS >> Mysql

mysql update-Spalte und wählen Sie dann den aktualisierten Wert aus

Das Beste, was Sie imitieren könnten, ist die Verwendung von zwei Abfragezeilen, wahrscheinlich mit einer Variablen wie:

 UPDATE tbl_user SET
     amount = @amount := amount-'$amount'
 WHERE id='$id' LIMIT 1;

 SELECT @amount;

Das Beste, was Sie dann tun könnten, ist, eine Stored Procedure zu erstellen wie:

 DELIMITER //

 CREATE PROCEDURE `return_amount` ()
 BEGIN
    UPDATE tbl_user SET
     amount = @amount := amount-'$amount'
    WHERE id='$id' LIMIT 1;

    SELECT @amount;
 END //

Und dann Stored Procedure aufrufen in Ihrem PHP .

Hinweis:PostgreSQL hat diese Art von Option mit RETURNING Anweisung, die so aussehen würde:

 UPDATE tbl_user SET amount=amount-'$amount' 
 WHERE id='$id' LIMIT 1
 RETURNING amount

Siehe hier