sql >> Databasteknik >  >> RDS >> Mysql

Ta bort en kvantitet från flera rader i en databas

SET @q = 12;

UPDATE `table`
SET qty = CONCAT(GREATEST(qty - @q, 0), LEFT(@q := @q - LEAST(qty, @q), 0))
ORDER BY id;

Se den på sqlfiddle .




  1. Hämta grupperingar från många-till-många tabeller

  2. är det snabbare att infoga rader i primärnyckelordning?

  3. Ett bättre sätt att generera denna json-array från MySql-data med php

  4. Hur skapar man en skrivskyddad användare i PostgreSQL?