J'ai cette requête, qui fonctionne ...Mise à jour/Incrémenter plusieurs colonnes MySQL dans une requête
UPDATE `contacts`
SET `calls_to`=`calls_to`+1
WHERE `contact_no` = '0412345678';
Ce que je veux aussi faire est d'ajouter une valeur au champ des coûts. De ma compréhension, la façon de le faire serait ...
UPDATE `contacts`
SET `calls_to` = `calls_to`+1,
`cost_to` = `cost_to`+0.25
WHERE `contact_no`='0412345678';
De toute évidence, comme je signale ici, il ne fonctionne pas comme je l'attendre.
--UPDATE--
Comme demandé, la structure de la table ..
id int(255) auto_increment
contact_owner varchar(255)
contact_no varchar(11)
contact_name varchar(255)
calls_to int(255)
txts_to int(255)
time_talked_to int(255)
cost_to decimal(65,2)
Que se passe-t-il? La requête semble correcte. – mdma
Pourriez-vous poster votre schéma de base de données? Aussi pourriez-vous poster le résultat de 'SELECT * FROM contacts WHERE contact_no = '0412345678''? En aparté, je crois que c'est une bonne pratique d'ajouter toujours un 'LIMIT 1' aux mises à jour que vous ne prévoyez pas affecter plus d'une rangée :) – Hamy
@mdma: Je suppose que le' cost_to' est une donnée INT type, la décimale ajoutée dans UPDATE est tronquée.Je ne vois pas ce que ça pourrait être d'autre. ... et votre réponse était * donc * pas là. –