-
seconda riga in tabella
salve ragazzi grazie all'amico stoner sono riuscito ad inserire in una tabella chiamata sensori dei dati in base ad una determinata condizione :
VALORE1 > VALOREMASSIMO e grazie a stoner con questa query riesco ad inserire la riga:
INSERT INTO sensore SELECT * FROM letture WHERE letture.valore1 > valoremassimo AND (SELECT sensori.ids FROM sensori WHERE sensore.ids = letture.ids) IS NULL;
adesso il problema nasce all'inverso quando il valore rientra nei limiti e cioe' :
VALORE1 < VALOREMASSIMO come inserire la seconda riga visto che ids e' uguale al primo record???
help me tank
-
Se tu vuoi che venga inserito in entrambi i casi ti basta fare
Codice:
INSERT INTO sensore
SELECT * FROM letture WHERE
letture.valore1 > valoremassimo OR
letture.valore1 < valoreminimo AND
(SELECT sensori.ids FROM sensori WHERE sensore.ids = letture.ids) IS NULL;
(potevi chiedere anche nell'altro topic.. era inerente)
#edit ma non doveva essere minore di valoreminimo ?
-
E' perfetto funziona grazie stoner, ma mi sono accorto di un'altro problema, la seconda variabile :
letture.valore1 < valoreminimo
deve essere inserita nella tabella solo se per lo stesso ids ho avuto prima la seguente condizione:
letture.valore1 > valoremassimo OR
in poche parole la prima condizione e' una condizione di riposo e non deve apparire se prima non ho la condizione di allarme ,credo di averla fatta fuori vabbe' ci provo scusate se vi dico le cose a tappe ma mentre provo vengono fuori le problematiche.
Grazie
-
e allora basta mettere l'and al posto dell'or
Codice:
INSERT INTO sensore
SELECT * FROM letture WHERE
letture.valore1 > valoremassimo AND
letture.valore1 < valoreminimo AND
(SELECT sensori.ids FROM sensori WHERE sensore.ids = letture.ids) IS NULL;
-
Grazie stoner anche se mi sono beccato un richiamo con 5 punti di penalizzazione per aver fatto due domande dentro lo stesso post ne e' valsa la pena ,
Grazie ancora ciao
EDIT:
non mi funziona o meglio lancio la query direttamente da phpmyadmin e la esegue senza errori ma poi dentro la tabella allarmi non viene riportato nessun record nonostante dentro la tabella archivio abbia due righe per lo stesso ids con :
valore1>valoremassimo
valore1<valoremassimo
ho detto tabella archivio e non letture perche' nella tabella letture per ogni ids ho una sola lettura per volta ogni volta viene aggiornata mentre nella tabella archivio vengono depositate tutte le letture di tutti gli ids???????
tra un po' vado in tilt