2009-08-16 77 views
4

我經常發現自己花費了大量的時間,弄清楚爲什麼某些SUM() - 聚合在SQL查詢中錯誤地總結出來。如果我在添加一個JOIN時沒有小心,導致重複的值總和等等,如果我使用大量JOIN,嵌套子查詢,GROUP BY等大型查詢,調試起來會非常複雜。協助編寫複雜SQL查詢的最佳工具?

我想知道,如果存在一個工具,將使其更易於被總結構建和調試複雜的查詢,通過圖形說明數據,結合在一起等

的我是什麼樣的一個例子尋找說明http://www.imada.sdu.dk/~sorenh07/misc/datacentric-querytool.png

這當然只是一個早期的樣機,我對任何有關評論感興趣。

+0

另請參閱http://stackoverflow.com/questions/1239530/ – 2009-08-16 19:30:02

+0

**測試數據** ,測試,引入**視圖** - 用於簡化和構建更復雜的查詢。 – 2015-01-23 21:27:50

回答

2

恕我直言,這是最好的「工具」是一本教科書。這是軟件無法爲您完成的領域之一。當然,它可以構建簡單的選擇&連接,但不會聚合函數或分組,或者子選擇等。爲此,您必須學會以舊式方式 - 手工/溼式軟件。我推薦:Lynn Beighley通過O'Reilly出版社出版的「Head First SQL」。

  1. 獲得一本書。
  2. 安裝您選擇的數據庫。
  3. 導入一些測試數據。
  4. 嘗試使用盡可能多的功能執行查詢。

練習,練習,練習。

+0

我當然同意你的意思......我在SQL和數據庫方面有很多經驗 - 語法和背後的理論 - 所有這些都學習了老式的方法:-)。 我想要的是一款軟件,用於揭示構建結果的初步數據集,以便更容易地看到值被錯誤複製,過濾等情況。也就是說,我想要一個工具可以給查詢的數據中心*視圖(顯示實際使用的數據),而不是純粹的*模式中心*(只顯示哪些表正在使用中)。 – 2009-08-17 16:29:39

+0

我使用Navicat查看我的查詢結果。我也使用Eclipse的數據庫資源管理器插件。 – 2009-08-17 18:27:04

1

每個數據庫都附帶內部命令來分析複雜的sqls,解釋哪個連接效率不高或需要更多時間來執行。

例如:如果你正在使用MySQL則命令是:解釋

+0

對於Oracle,您可以使用comman「解釋計劃」 – Niger 2009-08-16 13:42:56

1

TOAD可能是對這種事情最好多數據庫的工具,但我不相信這是爲徹底groking自己SQL任何替代品。如果您在構建查詢時遇到困難,那麼幾乎不可能有效地進行調試。

0

當我的查詢變得太難看了,我發現使用其中的很多SQL beautifiers是有幫助的。這些將不會爲您打印圖形,但只是適當的縮進,語法突出顯示和括號會幫助您達成很好的交易。

0

我使用了一個名爲「MySQL的代碼工廠」的可視化工具。 它只是用於MySQL,但也是一個很好的學習工具。