Zum Inhalt springen

digga_mies

Mitglieder
  • Gesamte Inhalte

    46
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von digga_mies

  1. Vielen Dank :uli Allerdings muss ich zu deinem Nachtrag sagen, das da etwas nich so ganz passt. Da fehlen mir einige Nodes und die Zahlen stimmen einfach nicht mehr überein. Mit deiner ersten Erklärung und der Gruppierung der ParentID in den Subquerys hat es wunderbar geklappt und geht ruckzuck. Beim Nachtrag müsste man ja auch theoretisch die Namen schon mal vertauschen, weil die Up2DateComputers ja die Rechner sind, deren DATVer >= @Variable1 sind. Und wenn man dann die TotalRechner zählen will, muss man ebenfalls ein CASE WHEN definieren, oder nicht? Deine Erklärung war aber echt super :uli
  2. Hi Leute, ich habe mir eine TSQL Abfrage zusammengeschustert, die leider Gottes nicht mehr aufhören will zu laufen. Sie läuft knapp 40min ohne Ergebnis und das ist leicht bescheuert. Innerhalb soll gezählt werden wie viele Rechner das aktuelle Virenschutzupdate installiert haben und die Gesamtzahl der Rechner in dem Land stehen. Daraus kann man dann prozentuale Anteile errechnen usw, aber das gehört ja nicht zur Abfrage. Kann mir jemand sagen, was ich in diesem Zusammenhang falsch mache? Weil wenn ich jeweils nur einen Teil der Abfrage laufen lasse (up2date clients oder alle clients) dann läuft die abfrage in wenigen sekunden. Hat jemand eine Idee. Eigentlich dürfte es nur ein Logikfehler sein. Grüße digga_mies Hier die Abfrage: DECLARE @VARIABLE1 NUMERIC(9) SELECT @VARIABLE1 = MAX(DATVer) FROM EPOProductProperties SET @VARIABLE1 = @VARIABLE1 - 3; SELECT EPOBranchNode.NodeName ,COUNT(DISTINCT Rechner_aktuell.NodeName) AS Up2DateComputers ,COUNT(DISTINCT Rechner_total.NodeName) AS TotalComputers FROM [ePO4_BBMAGA3].[dbo].[EPOBranchNode] LEFT JOIN (SELECT [EPOLeafNode].[NodeName], [EPOBranchNode].[L1ParentID] FROM [EPOLeafNode] left join [EPOProductProperties] ON [EPOProductProperties].[ParentID] = [EPOLeafNode].[AutoID] left join [EPOBranchNode] ON [EPOBranchNode].[AutoID] = [EPOLeafNode].[ParentID] WHERE [EPOLeafNode].[ParentID] = EPOBranchNode.AutoID AND EPOProductProperties.ProductCode LIKE 'VIRUS%' AND EPOProductProperties.DATVer >= CAST(@VARIABLE1 AS nvarchar(4)) ) AS Rechner_aktuell ON Rechner_aktuell.L1ParentID = EPOBranchNode.L1ParentID LEFT JOIN (SELECT [EPOLeafNode].[NodeName], [EPOBranchNode].[L1ParentID] FROM [EPOLeafNode] left join [EPOProductProperties] ON [EPOProductProperties].[ParentID] = [EPOLeafNode].[AutoID] left join [EPOBranchNode] ON [EPOBranchNode].[AutoID] = [EPOLeafNode].[ParentID] WHERE [EPOLeafNode].[ParentID] = EPOBranchNode.AutoID ) AS Rechner_total ON Rechner_total.L1ParentID = EPOBranchNode.L1ParentID WHERE EPOBranchNode.NodeName IN ('AR01','AT01','AU01','BE01','BG01','BR00','CH00','CL01','CN00','CO01','CZ00_SK00','DE00','DK01','DO01','EC01','ES00','FI01','FR00','HR01','HU00','ID01','IE01','IN01','IT01','JP01','KH01','KR01','MX01','MY01','MY02','NL01','NO01','PE01','PH01','PK01','PL01','PT01','RO01','RU01','SE02','SG01','TH01','TR01','TW01','UK01','US00','VN01','ZA01') GROUP BY EPOBranchNode.NodeName
  3. Hey, vielen Dank für die Antworten. Hab jetzt mal einen solchen Job angelegt und werde mal sehen. ob das so funktioniert. Da ich insgesamt von so vielen Servern einsammeln muss, passt es so am Besten. Grüße digga_mies
  4. Hallo Leute, ich möchte auf einem MSSQL Server eine Tabelle erstellen, die sich täglich 1x alle Daten von ca 10 anderen Tabellen aus anderen Datenbanken von anderen Servern abholt. Die Tabellen sehen dabei auf allen Servern gleich aus. Einen View zu erstellen, und die Daten immer von Linked Servern aktuell abzurufen, ist leider für das Reporting, für das ich die Tabelle nutzen möchte, nicht performant genug. Das bedeutet, ich möchte eigentlich immer eine neue Version pro Tag haben, die sich die Daten von den anderen Servern abholt. Wie kann ich einen solchen Schritt realisieren? Grüße digga_mies :bimei
  5. Hi @all, ich operiere grade an einer ODBC Datenquelle mit 3 voneinander abhängigen Tabellen. Das Problem ist, das ich die Felder nun gerne alle in ein Formular packen würde und aus der einen Datenbank vorgegebene Werte über ein Kombinationsfeld auswählen würde, wenn ich einen neuen Datensatz anlege, ohne das gleich eine neue ID vergeben wird, allerdings soll bei den anderen die ID eine neue werden. Ich hoffe irgendwer versteht diese Erklärung. Ist irgendwie schwer mein Problem in Worte zu fassen Grüße Rob
  6. Also ich habe schon viel Erfahrung mit den Reporting Services sammeln können, bin zufrieden damit und sie sind bei jeder SQL Lizenz dabei. Grüße Rob
  7. Danke, für den Tip, aber bei diesen Tabellen weiß ich zu 100% das es keine doppelten Einträge geben kann... Grüße :bimei
  8. Hey, also das mit dem UNION SELECT funktioniert einwandfrei. Nein, ich wollte die Daten nicht addieren, sondern nacheinander in einer Spalte ausgeben lassen. Hat mir sehr geholfen. Vielen Dank digga_mies :bimei
  9. Hey, um euch mal meine Erfahrungen mitzuteilen, dachte ich mir ich schreib euch auch mal was hier rein Ich bin jetzt im 3.Lehrjahr in der Ausbildung zum Fachinformatiker für Systemintegration und finde bisher habe ich alles richtig gemacht. Habe mich nach dem Ende meiner Schulzeit dazu entschieden eine Ausbildung anzufangen, weil ich mir auch noch nicht sicher war, ob das Studium sofort etwas für mich ist. Jetzt, so kurz vor Ende der Ausbildung hat mich aber doch nochmal der Lerneifer gepackt und ich werde zum Wintersemeseter anfangen zu studieren. Informatik, was auch sonst. Allerdings hat es einen Vorteil, schon eine Ausbildung gemacht zu haben, nämlich den, dass ich auch, wenn ich das Studium nicht schaffe, eine abgeschlossene Berufsausbildung habe und anfangen kann zu arbeiten. Ich kann jedem nur empfehlen diesen Weg zu gehen. War nur mal so ein kleiner Erfahrungsbericht meinerseits, ich weiß nicht ob es bei einer Entscheidung helfen kann, aber es ist sicher gut, sich mal mehrere Meinungen anzuhören. Grüße digga_mies
  10. Hi Leute, also der Name sagt nicht so viel, aber ich versuch's zu erklären. Ich habe 2 Views in 2 verschiedenen Datenbanken und möchte diese innerhalb einer Query untereinander ausgeben. Man kann sich das in etwa so vorstellen: View A ColumnA1 | ColumnA2 | ColumnA3 View B ColumnB1 | ColumnB2 | ColumnB3 Und daraus soll dann werden: Query-Ausgabe: IndexAusAB | ColumnAB1 | Column AB2 | ColumnAB3 IndexAusAB := Datenbankname von View A oder View B Ich hoffe ihr könnt nachvollziehen was ich meine und mir unter die Arme greifen. Grüße digga_mies
  11. Hallo Leute, hat sich schon mal jemand mit der WSUS DB auseinander gesetzt? Ich versuche gerade den letzten Status aus der Datenbank zu bekommen und finde da leider nur das LastSync Result, welches mich aber nich weiter bringt, weil es einfach mal die falschen Informationen anzeigt im Gegensatz zur WSUS Console auf dem Server. Hat sich schon mal jemand damit auseinander gesetzt? Wenn ja, bitte mal melden. Grüße Rob
  12. Hey, dankeschön. Das hilft mir schon mal weiter. Und wenn es so angenommen wurden ist, dann kann es ja auch nich falsch sein bei mir wäre es die IHK Kassel, falls jemand aus der Nähe eine Ahnung hat, dann bitte melden, ansonsten mach ich morgen in der Schule mal ne Anfrage Grüße Rob
  13. Hallo, ich möchte mich nochmal recht herzlich bedanken. Es funktioniert jetzt alles, allerdings habe ich das Ganze doch ein bisschen anders gelöst. Der Code ist hier: DECLARE @VARIABLE1 NUMERIC(9) SELECT @VARIABLE1 = MAX(DATVer) FROM EPOProductProperties SET @VARIABLE1 = @VARIABLE1 - 3; SELECT SUBSTRING(EPOBranchNode.NodeName,1,2) ,COUNT(DISTINCT Rechner_aktuell.ComputerName) AS Clients_wt_cur_DAT ,COUNT(DISTINCT Rechner_total.ComputerName) AS All_Clients FROM EPOBranchNode LEFT JOIN ( SELECT EPOLeafNode.ParentID, EPOLeafNode.NodeName AS ComputerName FROM EPOLeafNode INNER JOIN EPOProductProperties ON EPOProductProperties.ParentID = EPOLeafNode.AutoID WHERE EPOProductProperties.ProductCode LIKE 'VIRUS%' AND EPOProductProperties.DATVer >= CAST(@VARIABLE1 AS nvarchar(4)) ) AS Rechner_aktuell ON EPOBranchNode.AutoID = Rechner_aktuell.ParentID LEFT JOIN ( SELECT EPOLeafNode.ParentID, EPOLeafNode.NodeName AS ComputerName FROM EPOLeafNode INNER JOIN EPOProductProperties ON EPOProductProperties.ParentID = EPOLeafNode.AutoID WHERE EPOProductProperties.ProductCode LIKE 'VIRUS%' ) AS Rechner_total ON EPOBranchNode.AutoID = Rechner_total.ParentID WHERE EPOBranchNode.NodeName IN ('AR01','AT01','AU01','BE01','BR01','BR02','BR03','BR04','BR05','BR06','BR07','BR-EXCEPTIONS','BROK','BR-SRV','BR-SRV-WEBSENSE','BG01','CL01','CN00','CN01','CN02','CN03','CN04','CN05','CN06','CN07','CN08','CN09''CO01','HR01','CZ','CZ_NOTEBOOKS','CZ_SERVERS','CZ00_SK00','DK01','DO01','EC01','FI01','FR_AD','FR00','FR01','FR02','FR03','FR04','FR07','FR09','FR16','DE00','DE01','DE03', 'DE05','DE06','DE08','DE08_Server','DE11','DE12','DE13','DE17','DE20','DE21','DEX1','DEX2','DEXX','HU00','IN01','ID01','IE01','IT01','JP01','KR01','MY01','MY02','MX01','NL01','NO01','PK01','PE01','PH01','PL01','PT01','RO01','RU01','SG01','ZA01','ES00','SE02','CH01','CH03','CH05','CH07','TW01','TH01','TR01','UK01','US00','VN01','VN02','VN03') GROUP BY SUBSTRING(EPOBranchNode.NodeName,1,2) Grüße Rob
  14. Hallo Leute, ich hab mal eine allgemeine Frage zum Projektantrag. Was schreibt man denn bitte bei "Dokumentation zur Projektarbeit" rein?? Ich meine, die Arbeitsschritte und so weiter sind ja klar, aber was soll ich denn da reinschreiben? Welche Dateien zu meiner Dokumentation gehören, oder was?? Grüße Rob
  15. Hey Leute, mir ist da noch etwas eingefallen. Es ist ja Schwachsinn nur auf die neueste Version zu überprüfen. Ich würde nun gerne von dem MAX(DATVer) 3 abziehen. Dann hätte ich die 4 letzten Versionen. Wenn ich aber versuche VARIABLE1 als numerischen Wert zu initialisieren, gibt er mir immer den Fehler aus, das er NVARCHAR nicht in NUMERIC konvertieren kann. Gleicher Fehler bei CAST und CONVERT. Die Version wird im Format '1234.0000' angegeben. Da ja schon ein Punkt vorhanden ist, sollte sich das ganze doch ohne Problem als numerischer Wert behandeln lassen, oder? Ich hoffe ihr könnt mir hiermit nochmal helfen. Grüße Rob
  16. Ich danke euch allen hier Jetzt funktioniert es genau so, wie ich es mir vorgestellt habe Grüße Rob
  17. Und wie sollte ich das deiner Meinung nach in meine Query einbinden? Vor allem Dingen soll das ja nicht nur für BR gemacht werden, sondern für alle anderen ja auch. Wie wäre das da am einfachsten?? Grüße Rob
  18. Also vielen Dank an deine allgemein gehaltene Zusammenfassung meines Problems streffin Es funktioniert jetzt So sieht mein Code jetzt aus, die Prozentberechnung mache ich dann direkt im Report, das geht dort einfacher DECLARE @VARIABLE1 VARCHAR(9) SELECT @VARIABLE1 = MAX(DATVer) FROM EPOProductProperties SELECT EPOBranchNode.NodeName ,COUNT(DISTINCT Rechner_aktuell.ComputerName) AS Clients_wt_cur_DAT ,COUNT(DISTINCT Rechner_total.ComputerName) AS All_Clients FROM EPOBranchNode LEFT JOIN ( SELECT EPOLeafNode.ParentID, EPOLeafNode.NodeName AS ComputerName FROM EPOLeafNode INNER JOIN EPOProductProperties ON EPOProductProperties.ParentID = EPOLeafNode.AutoID WHERE EPOProductProperties.ProductCode LIKE 'VIRUS%' AND EPOProductProperties.DATVer = @VARIABLE1 ) AS Rechner_aktuell ON EPOBranchNode.AutoID = Rechner_aktuell.ParentID LEFT JOIN ( SELECT EPOLeafNode.ParentID, EPOLeafNode.NodeName AS ComputerName FROM EPOLeafNode INNER JOIN EPOProductProperties ON EPOProductProperties.ParentID = EPOLeafNode.AutoID WHERE EPOProductProperties.ProductCode LIKE 'VIRUS%' ) AS Rechner_total ON EPOBranchNode.AutoID = Rechner_total.ParentID WHERE EPOBranchNode.NodeName IN ('AR01','AT01','AU01','BE01','BR01','BG01','CA01','CL01','CN00','CO01','HR01','CZ00','DK01','DO01','EC01','FI01','FR00','DE00','HU00','IN01','ID01','IE01','IT01','JP01','KR01','MY01','MY02','MX01','NL01','NO01','PK01','PE01','PH01','PL01','PT01','RO01','RU01','SG01','ZA01','ES00','SE02','CH01','TW01','TH01','TR01','UK01','US00','VN01') GROUP BY EPOBranchNode.NodeName Nun habe ich aber noch eine Frage! Ich habe ja diese ganzen Sites angegeben in dem WHERE Statement. Kann man diese auch gruppieren? Ich habe nämlich gemerkt, das wir nicht nur eine Site von z.B.: BR haben, sondern 7, also BR01, BR02, BR03, ... , BR07. Also muss ich natürlich alle abfragen, wie es aussieht mit den aktuellen Rechnern und allen Rechnern und diese dann für BR zusammenfassen. Wenn jemand mir dazu noch einen Tip geben könnte, dann wäre ich euch sehr dankbar. In Kurzform: Aus BR01, [...] , BR07 mache BRges! Grüße Rob
  19. Also das mit dem EPO Reporting stimmt, es gibt da ein Web Frontend mit den man sich einige lustige Abfragen zusammenstellen kann und sich auch so einiges auswerten lassen kann. Das Radar was ich hier erstellen möchte, gibt es aber nicht in dem integrierten System. Ich benutze hier ausschleßlich den SQL Server 2008 Reporting Service falls dir das etwas sagt. Damit kann man die Reports in einer Visual Studio Umgebung designen, programmieren und anderen tollen Firlefanz mit anstellen. Die Reports werden dann auf einen eigenen Server exportiert und dort kann man sie dann wohlsortiert in einer virtuellen Architektur von Ordnern anzeigen lassen. Mein Kollege hat auch die Queries, die man mit dem EPO Frontend machen kann, genutzt um sich so ein Radar im Excel zusammenzuflicken, ABER es ist unschön so ein Excel in eine Internetseite einzubinden bzw. es jeden Tag händisch aktualisieren zu müssen. Somit wollen wir dieses Radar mit Hilfe des Reporting Services automatisieren und portierbarer machen. Denn mit dem Reporting Service hat man nicht nur die Möglichkeit die Reports bereitzustellen sondern auch das ganze mit den aktuellen Daten exportieren zu können und das ebenfalls automatisiert. Jetzt kennst du die Beweggründe dieser Arbeit btw: Danke für die Info von Edith
  20. Hey, also es sind insgesamt 3 Tabellen auf die ich zugreife. EPOLeafNode [Die Tabelle mit den Computern] - NodeName := Computer Name, die dann der Site zuzuordnen sind EPOBranchNode [Die Tabelle mit den Sites] - NodeName := Site Name, wo die Computer dann eingeordnet werden müssen EPOProductProperties [Die installierten McAffee Applikationen mit Eigenschaften] - DATVer := Ist die Version der Virendefinitionen, die der Virenschutz verwendet Untereinander sind diese Tabellen mit Feldern verbunden, die sich AutoID und ParentID nennen, diese sind aber nicht einfach zu joinen und je nachdem wie man das macht, bekommt man immer ein anderes Ergebnis. Ich habe sie in meinem Code so gejoint, das immer die übergeordnete, die AutoID zu der ParentID der untergeordneten Tabelle bekommen hat. Demnach wäre meine Ordnung jetzt: EPOBranchNode > EPOLeafNode > EPOProductProperties Damit man die Virenschutzdefinitionsversion (Krasses Wort! ) auch vom richtigen Programm bekommt, habe ich dann auf 'VIRUS%' gefiltert, was dann mein WHERE Statement erklärt. Ich hoffe das reicht insofern. Grüße Rob
  21. Hello again, Also ich habe mal einen Versuch gestartet... Das mit dem IN Statement klappt wunderbar und erspart vor allem Platz in dem kleinen SSRS Query Editor Fenster Was allerdings nicht funktioniert ist meine Subquery Leider bekomme ich dann die Summe aller angegeben Sites in jeder Zeile, was hier allerdings nichts nutzt, denn ich möchte ja die Gesamtzahl aller Rechner pro Site und dann den prozentualen Anteil der Site mit den aktuellen Virendefinitionen ausgeben. Gibt es eine Möglichkeit der Subquery ein Feld der aktuellen Zeile zu übergeben? Also in meinem Falle dann den Namen der Site, damit er eben immer nur die der Site zählt und als 3. Feld niederschreibt? So sieht meine Query jetzt nach der Bearbeitung aus, funktioniert aber nur so wie eben beschrieben: DECLARE @VARIABLE1 VARCHAR(9) SELECT @VARIABLE1 = MAX(DATVer) FROM EPOProductProperties SELECT EPOBranchNode.NodeName, COUNT(EPOProductProperties.DATVer) AS Part, (SELECT COUNT(EPOProductProperties.DATVer) FROM EPOLeafNode INNER JOIN EPOBranchNode ON EPOLeafNode.ParentID = EPOBranchNode.AutoID INNER JOIN EPOProductProperties ON EPOLeafNode.AutoID = EPOProductProperties.ParentID WHERE (EPOProductProperties.ProductCode LIKE 'VIRUS%') AND EPOBranchNode.NodeName IN ('AR01','AT01','AU01','BE01','BR00','BG01','CA01','CL01','CN00','CO01','HR01','CZ00','DK01','DO01','EC01','FI01','FR00','DE00','HU00','IN01','ID01','IE01','IT01','JP01','KR01','MY01','MY02','MX01','NL01','NO01','PK01','PE01','PH01','PL01','PT01','RO01','RU01','SG01','ZA01','ES00','SE02','CH00','TW01','TH01','TR01','UK01','US00','VN01') ) AS Total FROM EPOLeafNode INNER JOIN EPOBranchNode ON EPOLeafNode.ParentID = EPOBranchNode.AutoID INNER JOIN EPOProductProperties ON EPOLeafNode.AutoID = EPOProductProperties.ParentID WHERE (EPOProductProperties.ProductCode LIKE 'VIRUS%') AND EPOBranchNode.NodeName IN ('AR01','AT01','AU01','BE01','BR00','BG01','CA01','CL01','CN00','CO01','HR01','CZ00','DK01','DO01','EC01','FI01','FR00','DE00','HU00','IN01','ID01','IE01','IT01','JP01','KR01','MY01','MY02','MX01','NL01','NO01','PK01','PE01','PH01','PL01','PT01','RO01','RU01','SG01','ZA01','ES00','SE02','CH00','TW01','TH01','TR01','UK01','US00','VN01') GROUP BY EPOBranchNode.NodeName, EPOProductProperties.DATVer HAVING EPOProductProperties.DATVer = @VARIABLE1 ORDER BY EPOBranchNode.NodeName P.S.: Sorry für den Doppelpost, entweder ich bin zu doof den Edit Button zu finden, oder es gibt keinen MfG digga_mies
  22. Ahja, stimmt ja, sowas gab es da ja auch Ich danke dir, werd es mal probieren...
  23. Bin jetzt soweit, das ich den Anteil rausbekomme...Jetzt fehlt nur noch die totale Anzahl der Clients, damit ich sie als Prozentzahl ausgeben kann... Das hier wäre jetzt mein Code: DECLARE @VARIABLE1 VARCHAR(9) SELECT @VARIABLE1 = MAX(DATVer) FROM EPOProductProperties SELECT EPOBranchNode.NodeName, EPOProductProperties.DATVer, COUNT(EPOProductProperties.DATVer) AS Part FROM EPOLeafNode INNER JOIN EPOBranchNode ON EPOLeafNode.ParentID = EPOBranchNode.AutoID INNER JOIN EPOProductProperties ON EPOLeafNode.AutoID = EPOProductProperties.ParentID WHERE (EPOProductProperties.ProductCode LIKE 'VIRUS%') AND EPOBranchNode.NodeName = 'AR01' OR EPOBranchNode.NodeName = 'AT01' OR EPOBranchNode.NodeName = 'AU01' OR EPOBranchNode.NodeName = 'BE01' OR EPOBranchNode.NodeName = 'BR00' OR EPOBranchNode.NodeName = 'BG01' OR EPOBranchNode.NodeName = 'CA01' OR EPOBranchNode.NodeName = 'CL01' OR EPOBranchNode.NodeName = 'CN00' OR EPOBranchNode.NodeName = 'CO01' OR EPOBranchNode.NodeName = 'HR01' OR EPOBranchNode.NodeName = 'CZ00' OR EPOBranchNode.NodeName = 'DK01' OR EPOBranchNode.NodeName = 'DO01' OR EPOBranchNode.NodeName = 'EC01' OR EPOBranchNode.NodeName = 'FI01' OR EPOBranchNode.NodeName = 'FR00' OR EPOBranchNode.NodeName = 'DE00' OR EPOBranchNode.NodeName = 'HU00' OR EPOBranchNode.NodeName = 'IN01' OR EPOBranchNode.NodeName = 'ID01' OR EPOBranchNode.NodeName = 'IE01' OR EPOBranchNode.NodeName = 'IT01' OR EPOBranchNode.NodeName = 'JP01' OR EPOBranchNode.NodeName = 'KR01' OR EPOBranchNode.NodeName = 'MY01' OR EPOBranchNode.NodeName = 'MY02' OR EPOBranchNode.NodeName = 'MX01' OR EPOBranchNode.NodeName = 'NL01' OR EPOBranchNode.NodeName = 'NO01' OR EPOBranchNode.NodeName = 'PK01' OR EPOBranchNode.NodeName = 'PE01' OR EPOBranchNode.NodeName = 'PH01' OR EPOBranchNode.NodeName = 'PL01' OR EPOBranchNode.NodeName = 'PT01' OR EPOBranchNode.NodeName = 'RO01' OR EPOBranchNode.NodeName = 'RU01' OR EPOBranchNode.NodeName = 'SG01' OR EPOBranchNode.NodeName = 'ZA01' OR EPOBranchNode.NodeName = 'ES00' OR EPOBranchNode.NodeName = 'SE02' OR EPOBranchNode.NodeName = 'CH00' OR EPOBranchNode.NodeName = 'TW01' OR EPOBranchNode.NodeName = 'TH01' OR EPOBranchNode.NodeName = 'TR01' OR EPOBranchNode.NodeName = 'UK01' OR EPOBranchNode.NodeName = 'US00' OR EPOBranchNode.NodeName = 'VN01' GROUP BY EPOBranchNode.NodeName, EPOProductProperties.DATVer HAVING EPOProductProperties.DATVer = @VARIABLE1 ORDER BY EPOBranchNode.NodeName
  24. Holla, Ich bin langsam am verzweifeln mit diesen doofen SQL Abfragen Aber man muss ja tun, was man tun muss. Also im Endeffekt geht es hierbei um McAffee EPO Abfragen, man muss sich aber nicht damit auskennen um mir hier zu helfen denke ich. Probelm ist Folgendes: Ich möchte einen Report erstellen, der mir mit einem Netz- oder auch Radardiagramm eine Übersicht über die verteilten Virendefinitionen pro AD Site gibt. Das ganze soll aber Prozentual angezeigt werden, also wie viel Prozent der Clients pro Site haben einen Virendefinitionsstand der letzten 4 Versionen. Leider bekomme ich es momentan nicht hin, die Clients einer Site zu zählen. So das ich im Ergebnis immer die Site, dann die totale Anzahl und dann die Anzahl der Clients mit aktuellem Virendefinitionen bekomme. Ich weiß, das ich das voraussichtlich irgendwie mit Subselects machen muss. Aber irgendwie bekomme ich das ganze nicht hin. Hat jemand eine Idee? EPOBranchNode.NodeName ist hier der Name der Site, EPOProductProperties.DATVer ist die Version der Virendefinitionen. SELECT EPOLeafNode.NodeName AS ComputerName, EPOBranchNode.NodeName, EPOProductProperties.DATVer, (SELECT MAX(DATVer) FROM EPOProductProperties WHERE (ProductCode = 'VIRUSCAN8700') GROUP BY ProductCode) AS MaxDat FROM EPOLeafNode INNER JOIN EPOBranchNode ON EPOLeafNode.ParentID = EPOBranchNode.AutoID INNER JOIN EPOProductProperties ON EPOLeafNode.AutoID = EPOProductProperties.ParentID WHERE (EPOProductProperties.ProductCode LIKE 'VIRUS%') AND EPOBranchNode.NodeName = 'AR01' OR EPOBranchNode.NodeName = 'AT01' OR EPOBranchNode.NodeName = 'AU01' OR EPOBranchNode.NodeName = 'BE01' OR EPOBranchNode.NodeName = 'BR00' OR EPOBranchNode.NodeName = 'BG01' OR EPOBranchNode.NodeName = 'CA01' OR EPOBranchNode.NodeName = 'CL01' OR EPOBranchNode.NodeName = 'CN00' OR EPOBranchNode.NodeName = 'CO01' OR EPOBranchNode.NodeName = 'HR01' OR EPOBranchNode.NodeName = 'CZ00' OR EPOBranchNode.NodeName = 'DK01' OR EPOBranchNode.NodeName = 'DO01' OR EPOBranchNode.NodeName = 'EC01' OR EPOBranchNode.NodeName = 'FI01' OR EPOBranchNode.NodeName = 'FR00' OR EPOBranchNode.NodeName = 'DE00' OR EPOBranchNode.NodeName = 'HU00' OR EPOBranchNode.NodeName = 'IN01' OR EPOBranchNode.NodeName = 'ID01' OR EPOBranchNode.NodeName = 'IE01' OR EPOBranchNode.NodeName = 'IT01' OR EPOBranchNode.NodeName = 'JP01' OR EPOBranchNode.NodeName = 'KR01' OR EPOBranchNode.NodeName = 'MY01' OR EPOBranchNode.NodeName = 'MY02' OR EPOBranchNode.NodeName = 'MX01' OR EPOBranchNode.NodeName = 'NL01' OR EPOBranchNode.NodeName = 'NO01' OR EPOBranchNode.NodeName = 'PK01' OR EPOBranchNode.NodeName = 'PE01' OR EPOBranchNode.NodeName = 'PH01' OR EPOBranchNode.NodeName = 'PL01' OR EPOBranchNode.NodeName = 'PT01' OR EPOBranchNode.NodeName = 'RO01' OR EPOBranchNode.NodeName = 'RU01' OR EPOBranchNode.NodeName = 'SG01' OR EPOBranchNode.NodeName = 'ZA01' OR EPOBranchNode.NodeName = 'ES00' OR EPOBranchNode.NodeName = 'SE02' OR EPOBranchNode.NodeName = 'CH00' OR EPOBranchNode.NodeName = 'TW01' OR EPOBranchNode.NodeName = 'TH01' OR EPOBranchNode.NodeName = 'TR01' OR EPOBranchNode.NodeName = 'UK01' OR EPOBranchNode.NodeName = 'US00' OR EPOBranchNode.NodeName = 'VN01' GROUP BY EPOBranchNode.NodeName, EPOLeafNode.NodeName, EPOProductProperties.DATVer ORDER BY NodeName, ComputerName Ich hoffe jemand von euch hat eine Idee. Ich muss leider so eklig über die Sites filtern, schön ist das nicht, aber so geht es am Besten. Grüße, digga_mies :bimei

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...