Hi all,
ich habe eine Tabelle mit Netzwerkgeräten. Mehrmals täglich werden Daten hinzugefügt.
Ein Netzwerkgerät (Spalte:sw_name) kommt in nur einer Infrastruktur (Spalte fab_name) vor. Es gibt einen timestamp zu jedem Discovervorgang der für alle Geräte einer Infrastruktur gleich ist.
Jede Infrastruktur hat einen anderen timestamp.
Hier ein Beispiel der Tabelle:
timestamp;fab_name;sw_name
2011.06.18 12:00; fabric1;switch1
2011.06.18 12:00; fabric1;switch2
2011.06.18 12:00; fabric1;switch3
2011.06.15 12:07; fabric1;switch1
2011.06.15 12:07; fabric1;switch2
2011.06.18 13:00; fabric2;switchA
2011.06.18 13:00; fabric2;switchB
2011.06.18 13:00; fabric2;switchC
2011.06.18 13:00; fabric2;switchD
2011.06.15 13:04; fabric2;switchA
2011.06.15 13:04; fabric2;switchB
2011.06.15 13:04; fabric2;switchC
2011.06.18 13:00; fabric2;switchD
2011.06.18 13:00; fabric2;switchE
Ich möchte folgende Liste bekommen
"Last Discover Date" "Infrastructure" "Number of switches"
2011.06.18 12:00 fabric1 3
2011.06.18 13:00 fabric2 4
Es soll zu jeder Infrastruktur die aktuellsten Daten angezeigt werden. Wichtig ist für mich die richtige Anzahl der Switche zu den letzten Discover Zeitpunkt sowie der letzte Discover Zeitpunkt.
Mit folgendem Select bekomme ich die letzten Discoverzeiten je Infrastruktur raus:
SELECT max(timestamp) as "Last Discover", fab_name FROM `tbl_switchinfo` group by fab_name
Mit diesem Select bekomme ich alle Switche in der Tabelle je Infrastruktur raus:
select fab_name, count(*),fab_name from tbl_switchinfo group by fab_name
Aber ich will die Menge einschränken auf den letzten Discoverzeitpunkt!
Ich bekomme diese beiden Abfragen einfach nicht zusammen...
Gruss Andreas
ich habe eine Tabelle mit Netzwerkgeräten. Mehrmals täglich werden Daten hinzugefügt.
Ein Netzwerkgerät (Spalte:sw_name) kommt in nur einer Infrastruktur (Spalte fab_name) vor. Es gibt einen timestamp zu jedem Discovervorgang der für alle Geräte einer Infrastruktur gleich ist.
Jede Infrastruktur hat einen anderen timestamp.
Hier ein Beispiel der Tabelle:
timestamp;fab_name;sw_name
2011.06.18 12:00; fabric1;switch1
2011.06.18 12:00; fabric1;switch2
2011.06.18 12:00; fabric1;switch3
2011.06.15 12:07; fabric1;switch1
2011.06.15 12:07; fabric1;switch2
2011.06.18 13:00; fabric2;switchA
2011.06.18 13:00; fabric2;switchB
2011.06.18 13:00; fabric2;switchC
2011.06.18 13:00; fabric2;switchD
2011.06.15 13:04; fabric2;switchA
2011.06.15 13:04; fabric2;switchB
2011.06.15 13:04; fabric2;switchC
2011.06.18 13:00; fabric2;switchD
2011.06.18 13:00; fabric2;switchE
Ich möchte folgende Liste bekommen
"Last Discover Date" "Infrastructure" "Number of switches"
2011.06.18 12:00 fabric1 3
2011.06.18 13:00 fabric2 4
Es soll zu jeder Infrastruktur die aktuellsten Daten angezeigt werden. Wichtig ist für mich die richtige Anzahl der Switche zu den letzten Discover Zeitpunkt sowie der letzte Discover Zeitpunkt.
Mit folgendem Select bekomme ich die letzten Discoverzeiten je Infrastruktur raus:
SELECT max(timestamp) as "Last Discover", fab_name FROM `tbl_switchinfo` group by fab_name
Mit diesem Select bekomme ich alle Switche in der Tabelle je Infrastruktur raus:
select fab_name, count(*),fab_name from tbl_switchinfo group by fab_name
Aber ich will die Menge einschränken auf den letzten Discoverzeitpunkt!
Ich bekomme diese beiden Abfragen einfach nicht zusammen...
Gruss Andreas
Kommentar