Oracle groupby的bug

regonly1發表於2012-02-25
說到這個group by的bug,我自己都覺得不可思議,因為group by作為SQL語句中最常用的子句之一,被用在實現很多場景中。要是這個子句有bug,那其影響的範圍可是非常廣的。
我遇到的這個bug,是在10g環境下的,先看一個簡單的語句:

這個問題似乎在後續的版本中修復了(10.2.0.5),因為我在這個版本下,同樣的資料環境無法重現此現象。

同樣的資料複製到10.2.0.1的庫上,問題出現。據悉,該問題在10.2.0.4還有存在,因此可能是剛剛在我這個版本中解決了。

網上有很多關於hash group by 的bug描述,但是可能因為涉及oracle內部演算法的原因吧,全都沒有分析到其出現的具體原因。但不管怎麼說,oracle自己肯定發現並在新的版本中解決了。

我目前能重現的條件包括以下幾個:
1、外連線
2、有sum()被外連線的那個表的欄位
3、group by
還未進一步深入研究。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12932950/viewspace-717142/,如需轉載,請註明出處,否則將追究法律責任。

相關文章