Jag formaterade sql-frågan ( http://www.dpriver.com/pp/sqlformat.htm ) för att försöka begripa den, och det jag tror är problemet är att du har två subqueries Count_C och Count_P som förväntas ge varsitt värde. Om jag förstår rätt så retunerar de frågorna dock flera värden då de använder sig av group by
Hej
Jag vill få ut hur många kontroller som är gjorda under ett visst antal månader. Detta fungerar utmärkt ifall jag enbart väljer en månad. Men om jag tar ett antal månader funkar det inte alls utan då får jag ett felmeddelande. Jag är rätt ny i detta!! Kan någon ta en titt och säga vad jag gör för fel. Detta ska användas i en SSRS. Tack på förhand.
Fel:et
Msg 512, Level 16, State 1, Line 12
Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.
SQL:EN
DECLARE @FranManad as int
DECLARE @TillManad as int
DECLARE @Line as int
DECLARE @Ar as int
SET @FranManad = 8
SET @TillManad=10
SET @Line=100
SET @Ar =2012
Select distinct map, (DATEPART(mm,MEAS_DATETIME)) as manad,(DATEPART(yy,MEAS_DATETIME)) as ar,sum(FCOUNT) as sumantalfel,max(tolerans) as tolerans
,(select sum(count_c) as antalkont from kvalite.dbo.MainImport where
DATEPART(mm,MEAS_DATETIME) between @FranManad and @TillManad and (fcode = '0') and map like @Line
and (DATEPART(yy,MEAS_DATETIME))=@Ar group by DATEPART(yy,MEAS_DATETIME),DATEPART(mm,MEAS_DATETIME),map) as Count_C
,(select sum(count_p) as antalkont from kvalite.dbo.MainImport where
DATEPART(mm,MEAS_DATETIME) between @FranManad and @TillManad and (fcode = '0') and map like @Line
and (DATEPART(yy,MEAS_DATETIME))=@Ar group by DATEPART(yy,MEAS_DATETIME),DATEPART(mm,MEAS_DATETIME),map) as Count_P
from kvalite.dbo.MainImport inner join kvalite.dbo.FelTolerans ON MainImport.FCODE = FelTolerans.FCODET
where DATEPART(mm,MEAS_DATETIME) between @FranManad and @TillManad and (fcode='P25.4.1') and map like @Line
and (DATEPART(yy,MEAS_DATETIME))=@Ar group by DATEPART(yy,MEAS_DATETIME),DATEPART(mm,MEAS_DATETIME),map