2016-08-01 14 views
-1

Ich versuche, die geplanten Jobs mit einem Namen, Status und Beschreibung anzuzeigen. Das funktioniert sehr gut, aber wenn ich versuche, es mit der Reihenfolge ScheduledName zu sortieren, bekomme ich einen Fehler und sage mir, dass ich eine falsche Syntax habe und keine Ahnung habe, wie ich das beheben kann.Falsche Syntax in der Nähe des Schlüsselwortes "inner"

SELECT * FROM sysjobs Job 

SELECT * FROM sysschedules 

SELECT * FROM sysjobschedules 

SELECT 
    SC.name AS ScheduledName, Job.name AS JobName, 
    Job.enabled AS JobStatus, Job.description AS JobDescription 
FROM 
    sysjobs Job 
ORDER BY 
    ScheduledName; 
INNER JOIN 
    sysjobschedules SCH ON Job.job_id = SCH.job_id 
INNER JOIN 
    sysschedules SC ON SC.schedule_id = SCH.schedule_id 
+3

Sie nicht durch einen Auftrag haben, bevor Exklusionsverknüpfung – Jens

+0

Sortieren nach am Ende –

Antwort

0

Sie eine falsche Syntax verwenden. Wechseln zu:

USE msdb 
GO 

SELECT * FROM sysjobs Job; 

SELECT * FROM sysschedules; 

SELECT * FROM sysjobschedules; 

SELECT SC.name AS ScheduledName, Job.name AS JobName, Job.enabled AS JobStatus, Job.description AS JobDescription FROM sysjobs Job 
inner join sysjobschedules SCH 
on Job.job_id=SCH.job_id 
inner join sysschedules SC 
on SC.schedule_id=SCH.schedule_id 
ORDER BY ScheduledName 
+0

Dank @Jens arbeitet jetzt perfekt –

0

Ihre Anfrage ist:

SELECT SC.name AS ScheduledName, Job.name AS JobName, Job.enabled AS JobStatus, Job.description AS JobDescription 
FROM sysjobs Job 
ORDER BY SC.name; 

Das Semikolon die Abfrage beendet.

Wenn Sie das Semikolon entfernen, müssen Sie auch die ORDER BY bis zum Ende bewegen:

SELECT SC.name AS ScheduledName, Job.name AS JobName, 
     Job.enabled AS JobStatus, Job.description AS JobDescription 
FROM sysjobs Job inner join 
    sysjobschedules SCH on 
    Job.job_id = SCH.job_id inner join 
    sysschedules SC 
    on SC.schedule_id = SCH.schedule_id 
ORDER BY SC.name; 
0
SELECT SC.NAME AS ScheduledName 
    ,Job.NAME AS JobName 
    ,Job.enabled AS JobStatus 
    ,Job.description AS JobDescription 
FROM sysjobs Job 
INNER JOIN sysjobschedules SCH ON Job.job_id = SCH.job_id 
INNER JOIN sysschedules SC ON SC.schedule_id = SCH.schedule_id 
ORDER BY SC.NAME 
0

Order By am Ende sein sollte

USE msdb 
GO 

SELECT * FROM sysjobs Job 

SELECT * FROM sysschedules 

SELECT * FROM sysjobschedules 

SELECT 
    SC.name AS ScheduledName, 
    Job.name AS JobName, 
    Job.enabled AS JobStatus, 
    Job.description AS JobDescription 
FROM sysjobs Job 
inner join sysjobschedules SCH 
on Job.job_id=SCH.job_id 
inner join sysschedules SC 
on SC.schedule_id=SCH.schedule_id 
ORDER BY ScheduledName; 
Verwandte Themen