sql >> Database >  >> RDS >> Mysql

geval wanneer in update-query MySQL PDO

probeer de waarde niet toe te wijzen aan uw kolom binnen de CASE WHEN-instructies, aangezien u dat al doet.
de CASE WHEN zal evalueren naar de waarde die aan de voorwaarde voldoet.
probeer deze code

UPDATE payments SET 
 total = :total,
 paid = (CASE WHEN paid > :new THEN :new ELSE paid END),
 due = (CASE WHEN paid < :new THEN (:new - paid) ELSE due END)
 WHERE id = :id 

Ik heb de toewijzingen aan kolommen met betaalde en verschuldigde bedragen verwijderd in het dossieroverzicht.




  1. Hoe dynamisch een variabele maken met het gegevenstype tabel?

  2. Geolocatie SQL-query vindt geen exacte locatie

  3. hoe selecteer je een rij waar een van meerdere kolommen gelijk is aan een bepaalde waarde?

  4. 1 miljoen rijen verwijderen in SQL Server