Re: Correction de valeurs dans une base MySQL

トップ ページ

このメッセージに返信
著者: Frédéric
日付:  
To: Guilde
題目: Re: Correction de valeurs dans une base MySQL
Le 07/07/2015, Frédéric a écrit :

> J'ai une base de donnée contenant une table dans laquelle sont stockées
> des températures.
>
> La table a 3 champs : un timestamp, le nom du capteur, et la valeur de
> température.
>
> Je voudrais corriger tout le contenu de la table, en appliquant un simple
> offset, mais un offset propre à chaque capteur.
>
> Comment feriez-vous ça ? Est-ce faisable avec une simple requête MySQL ?
>
> Merci d'avance pour vos suggestions.


Hugues (ainsi que Pablo) me suggérait de faire comme ceci : utiliser une
seconde table, contenant les offsets, et :

Update table1 a, table2 b
set a.valeur_temp = a.valeur_temp + b.offset
where a.nom_capteur = b.nom_capteur;

En fait, je préfère corriger capteur par capteur, car il faut en même
temps que je modifie l'offset dans la partie électronique du capteur, pour
les prochaines mesures. Du coup, un simple :

UPDATE knx
SET value = value + <offset>
WHERE object = "<sensor_name>"

fonctionne.

-- 
    Frédéric