salut,
en fait je récupère a gauche a droite pour démarrer, et puis voilo, on arrive a des abérations.
j'ai un installation domotique. Il y a des releves de temperatures de pieces dans la maison, luminosité via 1 centrale météo, états des lumieres, capteurs de présence, ... Tout cela est récolté via (pour ceux qui connaissent) l'open source EIBD. C'est sous linux. 1 autre projet open source (linknx) permet de tout recolter dans 1 BDD. Le pb est que tout est stocké à la queleleue dans la meme table.
donc on a 1 table qui contient la date, l'objet mesuré, puis la valeur mesurée.
De l'autre coté, j'ai récupéré du code qui intégre jpgraph. Il me permet de comparer la courbe de 3 mesures sur le meme graphe, voire de mettre en évidence par ex la temp d'une piece en fonction de la luminosité (ca me permettra par ex d'anticiper et de couper le chauffage si besoin).
pour revenir a la technique, j'ai ceci :
$que2 = ("SELECT DATETIME, $data_1, $data_2, $data_3 FROM(SELECT ts as DATETIME, value as $data_1, null as $data_2, null as $data_3 from $table where object = '$data_1') as temp1 WHERE DATETIME $time_1 AND $data_1 IS NOT NULL ");
$que3 = ("SELECT DATETIME, $data_1, $data_2, $data_3 FROM(SELECT ts as DATETIME, null as $data_1, value as $data_2, null as $data_3 from $table where object = '$data_2') as temp2 WHERE DATETIME $time_1 AND $data_2 IS NOT NULL ");
$que4 = ("SELECT DATETIME, $data_1, $data_2, $data_3 FROM(SELECT ts as DATETIME, null as $data_1, null as $data_2, value as $data_3 from $table where object = '$data_3') as temp3 WHERE DATETIME $time_1 AND $data_3 IS NOT NULL ");
$que1 = "$que2 union $que3 union $que4 ORDER BY DATETIME ASC ";
$sql = mysql_query("$que1") or die("$que1 getmysql2 error");
je ne sais pas si c'est optimum, mais en tout cas ca fonctionne, meme si c'est assez long... Il faut savoir que ma base n'est pas top non plus, j'ai des redondances, bref, j'approche les 900 000 records

, et pas d'index pour le moment.
je pense qu'il faudrait éclater les datas dans n tables, chacune dédiée au capteur... ou bien 2 tables une avec la liste des capteurs et l'autre les données (avec la clé externe du capteur).
en plus, dans cette table sont mélangées différentes info : temperature, luminosité, etat (on/off), etc...
je suis s ouvert à toute proposition.
Merci en tout cas pour votre participation.
Aranud