Salut kokiwixx.
Je n'ai rien compris de vos explications !
Voici ce que vous devez nous fournir si vous désirez que l'on résolve votre problème :
1) la description de votre table (DDL), en précisant le type de la colonne qui vous pose un problème.
2) un jeu d'essai représentatif de votre problème.
3) la solution que vous désirez obtenir
4) et des explications simple et clair afin que nous puissions comprendre ce que vous attendez de nous.
Ayez à l'esprit que nous ignorons tout de votre problématique.
Adressez-vous comme si nous découvrions pour la première fois votre problème.
Répondez à ses questions si vous désirez que l'on vous aide !
Envoyé par
kokiwixx
Dans cette table SQL, j'ai une colonne ...
Quel est le type de cette colonne ?
Envoyé par
kokiwixx
... avec des donnés en secondes ...
Qu'est-ce que vous stockez dans cette colonne pour avoir des secondes ?
Est-ce une colonne de type "TIME" ? Dont le représentation est "HH:MM:SS" ?
Envoyé par
kokiwixx
... mais je remarque qu'il faut la remplacé en millisecondes.
Le passage des secondes en millisecondes se fait en multipliant par mille.
Qu'est-ce qui vous empêche de procéder ainsi ?
Envoyé par
kokiwixx
Malheureusement il y a de multiples valeurs différentes dont 67000 lignes environs.
Quel est la nature de votre problème ?
UPDATE `creature` SET `spawntimesecs` = REPLACE '1300' WHERE `spawntimesecs` LIKE '300'
Non, cela ne peut pas fonctionner car vous avez une erreur de syntaxe. Pour la syntaxe, regardez la documentation officielle : https://dev.mysql.com/doc/refman/5.7/en/update.html
Deux remarques :
a) si vous utilisez la clause "like", c'est que votre colonne est du type char (ou varchar). Est-ce bien cela ?
Quelle idée saugrenue de stocker une valeur numérique dans une colonne de type chaîne de caractères ?
b) si je traduis ce que vous désirez faire, mettre 1300 à la place de 300, cela n'a aucun rapport avec le passage des secondes aux millisecondes.
Et votre exemple n'est pas en conformité avec vos explications.
UPDATE `creature` SET `spawntimesecs` = '1300' WHERE `id` = ("721" "15763")
La encore la syntaxe n'est pas correcte.
Quel est le type de la colonne "id" ? Dois-je comprendre qu'elle est en integer ?
Si c'est oui, il est incorrecte de mettre "721", car ceci est une chaîne de caractères.
De plus, pour séparer les différentes valeurs vous devez mettre une virgule.
Cela fonctionnera mieux si vous écrivez ceci :
UPDATE creature SET spawntimesecs = '1300' WHERE id = (721, 15763)
Encore une fois, il nous est difficile de vous répondre si vous ne nous donnez pas les informations nécessaires à la compréhension de votre problème.
@+
Partager