sql >> Database >  >> RDS >> Mysql

Ontvang bijgewerkte waarde in MySQL in plaats van betrokken rijen

U kunt dit doen met een opgeslagen procedure die wordt bijgewerkt en vervolgens de nieuwe waarde in een uitvoerparameter selecteert. Het volgende retourneert één kolom new_score met de nieuwe waarde.

DELIMITER $$   -- Change DELIMITER in order to use ; withn the procedure
CREATE PROCEDURE increment_score
(
   IN id_in INT
)
BEGIN
    UPDATE item SET score = score + 1 WHERE id = id_in;
    SELECT score AS new_score FROM item WHERE id = id_in;
END
$$            -- Finish CREATE PROCEDURE statement
DELIMITER ;   -- Reset DELIMITER to standard ;

In PHP:

$result = mysql_query("CALL increment_score($id)");
$row = mysql_fetch_array($result);
echo $row['new_score'];


  1. Hoe gegevens tussen twee databases in PostgreSQL te vergelijken?

  2. Drie eenvoudige overwinningen op SQL Server-prestaties

  3. Wat is de maximale vergoeding voor group_concat_max_len in MySQL?

  4. Wat betekent Overhead in MySQL, wat is er slecht aan en hoe los je het op?