Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

MYSQL Abfrage mit Benachrichtigung über KACE K1000

Frage Entwicklung

Mitglied: Durash

Durash (Level 1) - Jetzt verbinden

15.05.2013, aktualisiert 10:46 Uhr, 1898 Aufrufe, 6 Kommentare

Hallo ich bin momentan am Testen von KACE K1000(Asset Management) und KACE K2000
Im Zusammenhang damit bräuchte ich mal etwas Unterstützung in Hinsicht von SQL.

Also Folgendes:
In KACE kann man Berichte erstellen und Planen die auf eine SQL Select Anweisung aufbauen.

Vorstellung vom Kunden: Benachrichtigung eines bald auslaufenden Vertrags.

Beispieltabelle:
Ablaufdatum
Vertrag + Ablaufdatum + Benachrichtigung am
Vertrag1 | 10.10.2015 | 10.09.2015
Vertrag2 | 20.09.2020 | 17.09.2020

etc.

So ich möchte eine Select Anweisung schreiben die alle Datensätze anzeigt die wo das Datum der Benachrichtigung am Heute und in der Vergangenheit liegt. Da ich von SQL nicht viel Ahnung habe, habe ich im Internet gestöbert und habe es versucht mit diesem Beispiel:

SELECT *
FROM Ablaufdatum
WHERE Benachrichtigung am <= DATE()

Nur funktioniert das nicht. Wäre ja auch zu einfach gewesen :D

Als Fehlermeldung bekommt ich bevor ich diese Berichterstellung speichern kann diese:
mysql error: [1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'am <= DATE() LIMIT 0' at line 3] in EXECUTE(
"SELECT *
FROM Ablaufdatum
WHERE Benachrichtigung am <= DATE() LIMIT 0")

Nur werde ich daraus nicht Schlau.
Habe mal in den Beispiel Benachrichtigung rumgestöbert die KACE dort schon drin hat dort sieht ein Beispiel SELECT Anweisung so aus. Dieser Befehl soll über einen Service Vertrag der in 60 Tagen ausläuft die Rechner Anzeigen.

SELECT M.NAME AS MACHINE_NAME, M.CS_MODEL AS MODEL, DA.SERVICE_TAG, DA.SHIP_DATE, M.USER_LOGGED AS LAST_LOGGED_IN_USER,
DW.SERVICE_LEVEL_CODE, DW.SERVICE_LEVEL_DESCRIPTION, DW.SERVICE_PROVIDER,
DW.END_DATE AS EXPIRATION_DATE
FROM DELL_WARRANTY DW
JOIN DELL_ASSET DA ON (DW.SERVICE_TAG = DA.SERVICE_TAG)
JOIN MACHINE M ON (M.BIOS_SERIAL_NUMBER = DA.SERVICE_TAG OR M.BIOS_SERIAL_NUMBER = DA.PARENT_SERVICE_TAG)
WHERE M.CS_MANUFACTURER LIKE '%dell%'
AND M.BIOS_SERIAL_NUMBER!=''
AND DA.DISABLED != 1
AND DW.END_DATE > NOW()
AND DW.END_DATE <= DATE_ADD(NOW(),INTERVAL 60 DAY)
AND DW.END_DATE = (SELECT MAX(END_DATE) FROM DELL_WARRANTY DW2 WHERE DW2.SERVICE_TAG=DW.SERVICE_TAG AND DW2.SERVICE_LEVEL_CODE=DW.SERVICE_LEVEL_CODE);

Wo liegt meine Fehler in der Formatierung? Oder habe ich komplett falschen Ansatz?

Vielen Danke schon mal im voraus für schnelle Antworten und alle Tipps & Tricks

Gruß Arne
Mitglied: LianenSchwinger
15.05.2013 um 12:33 Uhr
Hallo Arne,

setzt mal das Benachrichtigung am in Anführungsstriche.

01.
SELECT *  
02.
FROM Ablaufdatum  
03.
WHERE "Benachrichtigung am" <= DATE()
G Jörg
Bitte warten ..
Mitglied: Durash
15.05.2013 um 12:45 Uhr
Hatte ich auch schon versucht.
Leider hilft das nicht.
Habe aber nun festgestellt das es wohl nicht einfach wird mit FROM Ablaufdatum
Man kann mit Hilfe des Asset Management wohl einen Bericht erstellen und dort wirft er einem schon etwas vor.

SELECT ASSET.NAME AS ASSET_NAME , AD.FIELD_35 as 'Benachrichtigung am', GROUP_CONCAT(DISTINCT L1.NAME) as 'Computer', AD.FIELD_34 as 'Ablaufdatum' FROM ASSET
LEFT JOIN USER U ON U.ID = ASSET.OWNER_ID
LEFT JOIN MACHINE M ON ASSET.MAPPED_ID = M.ID and ASSET.ASSET_TYPE_ID = 5
LEFT JOIN ASSET_DATA_10 AD ON AD.ID = ASSET.ASSET_DATA_ID LEFT JOIN ASSET_ASSOCIATION J1
ON J1.ASSET_FIELD_ID = 33 AND J1.ASSET_ID = ASSET.ID
LEFT JOIN ASSET L1
ON L1.ID = J1.ASSOCIATED_ASSET_ID
where ASSET.ASSET_TYPE_ID = 10 GROUP BY ASSET.ID ORDER BY ASSET_NAME

nur wie baue ich das nun um das er das Datum von Benachrichtigung am mit das Datum von heute Vergleich und mir dann die Datensätze auflistet.
Habs versucht den unterenteil where ASSET.ASSET_TYPE_ID = 10 GROUP BY ASSET.ID ORDER BY ASSET_NAME
durch where AD.FIELD_35 <= DATE() nur kommt dort wieder der Fehler selbe Fehler
Bitte warten ..
Mitglied: LianenSchwinger
15.05.2013 um 13:35 Uhr
Hallo Arne,

01.
SELECT ASSET.NAME AS ASSET_NAME,  
02.
       AD.FIELD_35 as 'Benachrichtigung am',  
03.
       GROUP_CONCAT(DISTINCT L1.NAME) as 'Computer',  
04.
       AD.FIELD_34 as 'Ablaufdatum'  
05.
FROM ASSET 
06.
LEFT JOIN USER U ON U.ID = ASSET.OWNER_ID 
07.
LEFT JOIN MACHINE M ON ASSET.MAPPED_ID = M.ID  
08.
                    AND ASSET.ASSET_TYPE_ID = 5 
09.
LEFT JOIN ASSET_DATA_10 AD ON AD.ID = ASSET.ASSET_DATA_ID  
10.
LEFT JOIN ASSET_ASSOCIATION J1 ON J1.ASSET_FIELD_ID = 33  
11.
                               AND J1.ASSET_ID = ASSET.ID 
12.
LEFT JOIN ASSET L1 ON L1.ID = J1.ASSOCIATED_ASSET_ID  
13.
WHERE ASSET.ASSET_TYPE_ID = 10  
14.
AND AD.FIELD_35 <= DATE() 
15.
GROUP BY ASSET.ID  
16.
ORDER BY ASSET_NAME
G Jörg
Bitte warten ..
Mitglied: Durash
15.05.2013 um 13:47 Uhr
Hallo Jörg das sieht gut aus, hab es direkt getestet. Nur kommt dort dieser Fehler wieder.. :/

mysql error: [1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')
GROUP BY ASSET.ID
ORDER BY ASSET_NAME LIMIT 0' at line 14] in EXECUTE(
"SELECT ASSET.NAME AS ASSET_NAME,
AD.FIELD_35 as 'Benachrichtigung am',
GROUP_CONCAT(DISTINCT L1.NAME) as 'Computer',
AD.FIELD_34 as 'Ablaufdatum'
FROM ASSET
LEFT JOIN USER U ON U.ID = ASSET.OWNER_ID
LEFT JOIN MACHINE M ON ASSET.MAPPED_ID = M.ID
AND ASSET.ASSET_TYPE_ID = 5
LEFT JOIN ASSET_DATA_10 AD ON AD.ID = ASSET.ASSET_DATA_ID
LEFT JOIN ASSET_ASSOCIATION J1 ON J1.ASSET_FIELD_ID = 33
AND J1.ASSET_ID = ASSET.ID
LEFT JOIN ASSET L1 ON L1.ID = J1.ASSOCIATED_ASSET_ID
WHERE ASSET.ASSET_TYPE_ID = 10
AND AD.FIELD_35 <= DATE()
GROUP BY ASSET.ID
Bitte warten ..
Mitglied: Durash
15.05.2013 um 13:50 Uhr
Ok Habe wohl den Fehler gefunden, es liegt an dem DATE() es heißt dort wohl NOW() jedenfalls lies er sich mit NOW() abspeichern ohne Fehlermeldung, werde das ganze nun test und melde mich dann zurück. ;) Danke dir Jörg
Bitte warten ..
Mitglied: Durash
15.05.2013 um 14:25 Uhr
Ok vielen Dank, klappte alles super.
Bitte warten ..
Ähnliche Inhalte
Datenbanken
gelöst MYSQL Abfrage Werte summieren (3)

Frage von Ghost108 zum Thema Datenbanken ...

Datenbanken
gelöst MySQL Abfrage um JOIN erweitern (14)

Frage von datadexx zum Thema Datenbanken ...

Datenbanken
gelöst MySQL Abfrage für demographische Zwecke (3)

Frage von morphil zum Thema Datenbanken ...

Administrator.de Feedback
gelöst Benachrichtigungen verschwunden?! (6)

Frage von Dani zum Thema Administrator.de Feedback ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Linksys wrt1200ac v2 mit dd-wrt: keine vlan-einstellungen im GUI (15)

Frage von Pixi123 zum Thema Router & Routing ...

E-Business
Wo tragt ihr eure privaten Termine ein? (13)

Frage von honeybee zum Thema E-Business ...

Batch & Shell
Batch zum suchen und verschieben von Verknüpfungen (12)

Frage von zeroblue2005 zum Thema Batch & Shell ...

Windows Server
Terminalserver starten willkürlich neu (12)

Frage von thaefliger zum Thema Windows Server ...