2014-12-03 33 views
0

這是我的查詢不斷返回錯誤00906. 00000 - 「缺少左括號」 - 它表示它應該在行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

表中添加不from子句 – radar 2014-12-03 17:34:21

+0

當選擇我把它放在那裏,它給我的錯誤,我的SQL命令沒有正確結束在第二行 – Panic 2014-12-03 17:36:06

+0

什麼是ADD? – San 2014-12-03 17:37:56

回答

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 2014-12-03 17:57:05