2014-11-19 1 views
1

데이터베이스 관리자가 내 asp.net 프로젝트에 대해 sql 명령을 보냈습니다. 그러나 나를 이해하는 것은 어렵습니다.복잡한 SQL 명령에 WHERE 명령을 어디에 넣어야합니까?

명령 :이 같은

SELECT to_char(FirstDate, 'yyyymmdd') AS EXPR1, SUM(Single) AS SingleFile, SUM(Sum) AS AllFiles ROUND(SUM(SingleSize)/(1024 * 1024 * 1024), 2) AS SingleSize, 
      ROUND(SUM(SumSize)/(1024 * 1024 * 1024), 2) AS SumSize 
FROM (SELECT FILE, MIN(DATE) AS FirstDate, 1 AS Single, COUNT(*) AS Sum, MAX(Size) AS SingleSize, SUM(Size) AS SumSize 
      FROM INETISLE.XFERLOG 
      GROUP BY FILE) derivedtbl_1 
GROUP BY to char(FirstDate,'yyyymmdd') 
ORDER BY 1 

출력 :

나는 내 캘린더에 EXPR1 (날짜)에 연결해야
EXPR1  SingleFile  SumFile   SingleSize  SumSize 
19.11.2014 123123   13423   12312423  23424132 

.

Asp.net 달력 컨트롤은 WHERE 다음과 같이 추가 :

내 복잡한 SQL 명령에 WHERE를 배치해야합니까
WHERE ([EXPR1] = ?) 

?

캘린더에서 선택한 하루를 선택해야합니다.

+0

FROM과 GROUP BY 사이에는 어디에 두 개의 plca가 추가 될 수 있습니다. – wvdz

+2

쿼리에서 EXPR1을 어디에서 얻고 있습니까? – mmmmmpie

+1

우리가 준 쿼리에서 EXPR1이 전혀 표시되지 않습니다. 그게 어디서 온거야? –

답변

1
SELECT to_char(IlkTarih, 'yyyymmdd') AS EXPR1, SUM(Toplam) AS ToplamDosya,  ROUND(SUM(TekilBoyut)/(1024 * 1024 * 1024), 2) AS TekilBoyut, 
      ROUND(SUM(ToplamBoyut)/(1024 * 1024 * 1024), 2) AS ToplamBoyut 
FROM (SELECT DOSYA, MIN(TARIH) AS IlkTarih, 1 AS Tekil, COUNT(*) AS Toplam, MAX(BOYUT) AS TekilBoyut, SUM(BOYUT) AS ToplamBoyut 
      FROM INETISLE.XFERLOG 
      WHERE DATE(TARIH) = ? 
      GROUP BY DOSYA) derivedtbl_1 
GROUP BY to char(IlkTarih,'yyyymmdd') 
ORDER BY 1 
+0

감사하지만 오류가 발생했습니다 : ora-00936 : 표현이 없습니다. – phe

+0

죄송합니다, 내 잘못, 그 작품. 고맙습니다. – phe

관련 문제