2013-06-02 168 views
-3

我有場Profit其中EasyPasia得到了(10,10)Omni(15,15)命名EasyPaisaTimePay,並Omni三個表,TimePay(20,20)一筆不顯示正確的結果

  1. EasyPaisa與和利潤20
  2. 全方位與和利潤30
  3. TimePay與和利潤40

,當我拿出利潤與此查詢:

SELECT 
    Sum(EasyPaisa.Profit) AS Expr1, 
    Sum(Omni.Profit) AS Expr2, 
    Sum(TimePay.Profit) AS Expr3 
FROM 
    EasyPaisa, 
    Omni, 
    TimePay; 

它給我的結果是實際結果的兩倍

  1. EasyPaisa利潤爲40
  2. 全方位利潤爲60
  3. TimePay利潤爲80
+0

請顯示錶格的定義,以便我們可以幫助您。 –

+0

當您使用FROM tableA,tableB,tableC時,您實際上是在沒有公共列的連接表上連接它們,這會導致您的「連接」表具有3個表中所有行的組合,請閱讀JOIN SQL知道更多。 –

回答

0

你在找這個?

SELECT 
    (SELECT SUM(Profit) FROM EasyPaisa) Expr1, 
    (SELECT SUM(Profit) FROM Omni)  Expr2, 
    (SELECT SUM(Profit) FROM TimePay) Expr3 

輸出:

| EXPR1 | EXPR2 | EXPR3 | 
------------------------- 
| 20 | 30 | 40 | 

這裏是SQLFiddle演示。

+0

感謝您的答覆我真的很感激它, 我解決它周圍的其他方法我創建了三個視圖中的每個視圖包含一個表和,在我現在又增加了這三個視圖第四視圖它顯示我正確的結果, 儘管3負面反應我欣賞stackoverflow和我最好的問候彼得他的幫助, 謝謝 – SMHasnain