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, 1849 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 ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(2)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
PHP
MySQL-Abfrage mit php: Wert + true bzw. false (2)

Frage von tomolpi zum Thema PHP ...

Datenbanken
gelöst MYSQL Abfrage (20)

Frage von datadexx zum Thema Datenbanken ...

C und C++
gelöst IF Abfrage funktioniert nicht mehr (2)

Frage von pablovic zum Thema C und C ...

Datenbanken
gelöst SQL-Abfrage - DISTINCT - letztes Datum (3)

Frage von emeriks zum Thema Datenbanken ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...