2009-05-14 17 views
0

Diese Abfrage gibt mir einen Fehler: Msg 156, Ebene 15, Status 1, Zeile 10 Falsche Syntax in der Nähe des Schlüsselwortes 'wo'.Wie kann ich diese Abfrage auswerten?

declare @date1 datetime,@date2 datetime , @COUNT INT , @countgap int, @order int 
seLECT @date1='2009-05-11' , @date2 = '2009-05-12' 
seLECT @countgap = 30 , @COUNT = 0, @order=23 

select VisitingCount from (
select count(page) as VisitingCount, 
    (datepart(hour,Date)*60+datepart(minute,Date))/@countgap as OrderNumber 
    from scr_SecuristLog 
    where Date between @date1 and @date2 
    GROUP BY (datepart(hour,Date)*60+datepart(minute,Date))/@countgap) where [email protected]
+0

Ich verstehe nicht Code in Stackoverflow bearbeiten? – Penguen

Antwort

3

Pherhaps:

GROUP BY (datepart(hour,Date)*60+datepart(minute,Date))/@countgap) 
HAVING [email protected] 

oder:

where (Date between @date1 and @date2) AND [email protected] 
GROUP BY (datepart(hour,Date)*60+datepart(minute,Date))/@countgap) 
2

Sie benötigen eine abgeleitete Tabelle einen Namen zum Beispiel zu geben, DT1. Hier habe ich den SQL-Text nach meinen persönlichen Wünschen formatiert :), um es einfacher zu lesen:

select DT1.VisitingCount 
    from (
     select count(page) as VisitingCount, 
       (datepart(hour,Date)*60+datepart(minute,Date))/@countgap 
        as OrderNumber 
      from scr_SecuristLog 
     where Date between @date1 and @date2 
     GROUP 
      BY (datepart(hour,Date)*60+datepart(minute,Date))/@countgap 
     ) AS DT1 
where [email protected]