2014-12-03 4 views
0

오류 00906을 계속 반환하는 쿼리입니다. 00000 - "missing left parenthesis"- 라인 from table b) b에 있어야 함을 나타냅니다. 어떤 도움을 받았는지 잘 모르겠다. 주소가 같고 상태가 다른 레코드를 선택하려고합니다.SQL 분석 기능을 개선하는 데 도움이 필요합니다. 왼쪽 괄호가 누락되었습니다.

select ADD.ID, ADD.Address, ADD.Unit, ADD.Status FROM 
    (select b.*, min(ADD.status) OVER (partition by ADD.Address) as minstatus, 
    max(ADD.status) OVER (partition by ADD.Address) as maxstatus 
    from ADD b) b 
    where minstatus <> maxstatus 
     order by ADD.Address; 

이상적으로이 기록의 이러한 종류의 반환 :

ID | Address | Unit | Status 
1 |555 Smith Rd | Apt A | Success 
2 |555 Smith Rd | Apt B | Success 
3 |555 Smith Rd | Apt C | Success 
4 |555 Smith Rd | Apt D | Failure 
+0

테이블이 절 – radar

+0

에서 선택되지 ADD 나는 거기에 넣어, 내 SQL 명령을 두 번째 줄에서 제대로 끝나지 않은 오류 준다 – Panic

+0

추가 무엇입니까 ??? – San

답변

1

테이블 이름으로 add을 고려를 올바른 쿼리해야 -

SELECT c.id, 
     c.address, 
     c.unit, 
     c.status 
    FROM (SELECT b.*, 
       MIN(b.status) over(PARTITION BY b.address) AS minstatus, 
       MAX(b.status) over(PARTITION BY b.address) AS maxstatus 
      FROM add b) c 
WHERE c.minstatus <> c.maxstatus 
ORDER BY c.address; 
+0

고맙습니다. – Panic

관련 문제