Mysql
 sql >> Database >  >> RDS >> Mysql

I binari mostrano l'ultimo valore dopo il raggruppamento

Se ho capito bene, stai aggiungendo un nuovo record con un timestamp e uno stato ogni volta che aggiorni lo stato di un server? Se è corretto, dovrai GROUP BY server_id e ORDER BY date DESC .

Questo può essere espresso in SQL come

SELECT * FROM servers GROUP BY server_id ORDER BY date DESC;

o in ActiveRecord di Rails come

Server.all.group(:server_id).order(:created_at => :desc)

(Come nota a margine, consiglierei di chiamare questo modello qualcosa come ServerStatus piuttosto che solo Server - rappresenta lo stato, non il server stesso.)