Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2001
    Messaggi
    94

    MYSQL - SELECT del Massimo valore senza php e successiva select in un'altra tabella

    Ciao è un po' che non bazzico da queste parti, vedo che tutto ancora va alla grande! Complimenti!

    Devo realizzare un sistema per monitorare alcuni eventi quidni avevo messo in piedi tutto uno scritp php (che vi evito) purtroppo, vista la enorme mole di dati (100,000,000 a settimana) o metto un "crei" oppure devo sfruttare meglio MYSQL.

    Allora ho provato a fare una query ottimizzatabasandomi anche sul MAX(IDL) che speravo spostasse il cursore direttamente sul massimo valore relativo al singolo sensore. Purtroppo non avviene così.

    Select Lettura.IDI,MAX(Lettura.IDL) as 'max',Lettura.IDL as 'ID Lettura',TipoDato.Descrizione , Lettura.Data,NOW() as 'ora', TIMEDIFF(NOW(),Lettura.Data + INTERVAL 11 MINUTE) as 'Differenza',CONCAT((TipoDato.ValoreMedio+(ValoreL ettura.Valore*TipoDato.Incremento)),' ',TipoDato.Unita) as Valore from Lettura left join ValoreLettura on Lettura.IDL=ValoreLettura.IDL Left join TipoDato ON TipoDato.IDD=ValoreLettura.IDD Group By Lettura.IDI,Lettura.IDS,ValoreLettura.IDD;
    e parte del risultato è questo
    IDI | max | ID Lettura | Descrizione | Data | ora | Differenza | Valore |
    +-------+-------+------------+-------------+---------------------+---------------------+------------+-----------+
    | 01001 | 92798 | 1062 | Temperatura | 2007-12-31 16:24:40 | 2008-01-06 09:31:25 | 136:55:45 | 21.3 ?C |
    | 01001 | 92798 | 1062 | Umidit? | 2007-12-31 16:24:40 | 2008-01-06 09:31:25 | 136:55:45 | 32.66 % |
    | 01001 | 92797 | 1061 | Temperatura | 2007-12-31 16:24:40 | 2008-01-06 09:31:25 | 136:55:45 | 20.66 ?C |
    | 01001 | 92797 | 1061 | Umidit? | 2007-12-31 16:24:40 | 2008-01-06 09:31:25 | 136:55:45 | 33.43 % |
    Come vedere max non corrisponde a ID Lettura.
    La soluzione sarebbe passare a MYSQL (ultima versione) e fare una stored procedure e si po' studiare... invece mi domando con questa versione di mysql 4,1,2 è possibile fare in modo che venga esegutia la select sul relativo valore massimo dell'IDL?

    è contorto lo so ma se fosse stato facile non vi venivo a molestare il giorno della befana!!!!

    CIAO A TUTTI
    pierfrac Le cose le sa ma non se le ricorda... Io non le so affatto!!! ... dimenticavo... sono io pierfrac!:P

  2. #2
    Non ho ben capito se devi estrarre UNA SOLA TUPLA (quella col massimo valore di IDL) oppure più risultati ordinati in senso decrescente in base a IDL...

    sei stato un po contorto nella spiegazione :P chiarisci meglio il problema (evitando il passato di php...
    Administrator of NAMDesign.Net

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.