Soustraction d'un index précédent

Bonjour,

Je réalise un projet dans lequel il reçoit des données d'un consommateur d'eau et ensuite j'affiche ces valeurs dans un graphique avec chart.js. Le problème est que je dois faire quelques calculs dans la requête qui crée un fichier json.

J'ai fait le premier qui est l'indice de la lecture divisé par l'impulsion par unité (/1000).

Mais je dois encore en faire un autre qui est l'indice suivant moins l'ancien indice, en fait OldIndex = (IndexReleve/ImpParUnit) donc (NewIndex - OldIndex ) entre 2 dates.

Mais tout dans la même requête j'ai un problème et je ne sais pas s'il y a une solution...

exemple de données d'entrée

oldindex = 343.32 NewIndex = (IndexReleve/ImpParUnit) - oldindex = 471.56 - 343.32 = 128.24
the value of output 128.24

OldIndex = 471.56 NewIndex = (IndexReleve/ImpParUnit) - oldindex = 473 - 471.56 = 1.44 
the value of output 1.44 etc

Releves = les valeurs reçues du consommateur d'eau Emplacement = l'endroit de chaque consommateur d'eau car il y a différents parcs ici c'est le code puits où je me trouve

SELECT i.*, @IndexReel := (ROUND((i.IndexReleve/i.ImpParUnit)) - @ancienIndex) as IndexReel, @ancienIndex := ROUND((i.IndexReleve/i.ImpParUnit)) as ancienIndex,DATE_FORMAT(DateHeure, '%d/%m/%Y %H:%i:%s') as DateHeure 
FROM Releves i,Emplacements 
CROSS JOIN ( SELECT @ancienIndex := '', @IndexReel := '') as init 
WHERE DateHeure>'".$DebutAnalyse."' AND DateHeure<'".$FinAnalyse."' AND Emplacements.Id=".$Emplacement." AND Emplacements.CompteurElec=i.Compteur 
ORDER BY DateHeure

[{
    "Id": "1583001",
    "Compteur": "11",
    "IndexReleve": "442351",
    "ImpParUnit": "1000",
    "DateHeure": "01\/01\/2016 00:22:51",
    "IndexReel": "442",
    "ancienIndex": "442"
}, {
    "Id": "1583017",
    "Compteur": "11",
    "IndexReleve": "442351",
    "ImpParUnit": "1000",
    "DateHeure": "01\/01\/2016 00:53:55",
    "IndexReel": "0",
    "ancienIndex": "442"
},

voici le fichier json je ne sais pas si c'est un problème de sortie de date ou si c'est le code...Windows / Chrome 87.0.4280.66

1 réponse

  1. Contributeur

    bonjour,

    tu nous montres ce que tu obtiens, peux-tu montrer ce que tu souhaites obtenir à la place?

    0
    1. ce que j'obtiens 

      ce que je dois obtenir 

      0
    2. Contributeur
      @Nicolas

      C'est le json qui nous intéresse, pas le graphe.

      0
    3. @yg_be

      Ah desole 

      voici ce que j'obtiens 

      {
          "Id": "1582997",
          "Compteur": "7",
          "IndexReleve": "488638",
          "ImpParUnit": "1000",
          "DateHeure": "01\/01\/2016 00:22:49",
          "IndexReel": "489",
          "ancienIndex": "489"
      }, {
          "Id": "1583013",
          "Compteur": "7",
          "IndexReleve": "488638",
          "ImpParUnit": "1000",
          "DateHeure": "01\/01\/2016 00:53:53",
          "IndexReel": "0",
          "ancienIndex": "489"
      },

      et voici l'exemple que je dois obtenir 

      [{
          "Id": "1582997",
          "Compteur": "7",
          "IndexReleve": "488638",
          "ImpParUnit": "1000",
          "DateHeure": "01\/01\/2016 00:22:49",
          "IndexReel": "489",
          "ancienIndex": "489"
      }, {
          "Id": "1583013",
          "Compteur": "7",
          "IndexReleve": "523636",
          "ImpParUnit": "1000",
          "DateHeure": "01\/01\/2016 00:53:53",
          "IndexReel": "35",
          "ancienIndex": "489"
      }, 

      avec le calcul que j'ai ecrit en haut 

      0
    4. Contributeur
      @Nicolas

      Peux-tu montrer ce que contiennent tes tables?

      0
    5. @yg_be

      les nombres de compteurs paires c'est ceux d'eau et les impairs c'est elec

      0