2014-06-11 122 views
0

這就是我想要得到的。SQLite - 複雜查詢

Art|CANTIDAD1|CANTIDAD2|CANTIDAD1CARGA1 |CANTIDAD2CARGA1 |CANTIDAD1CARGA2 | CANTIDAD2CARGA2 
---------------------------------------------------------------------------------------------- 
001| 7 | 0 |  4  |  0  |  3  |  0 
002| 0 | 2 |  0  |  1  |  0  |  1 
003| 2 | 0 |  2  |  0  |  0  |  0 
004| 3 | 0 |  1  |  0  |  2  |  0 
005| 2 | 0 |  0  |  0  |  2  |  0 
006| 0 | 1 |  0  |  0  |  0  |  1 

我得到CANTIDAD1和CANTIDAD2做這個查詢。它是對應於量的總和的結果「其中」

SELECT 
    SUM(D.NCANTIDAD1) AS NTOTCANTIDAD1, 
    SUM(D.NCANTIDAD2) AS NTOTCANTIDAD2 
FROM 
    CABPEDIDOS C, 
    DETPEDIDOS D, 
    ARTICULOS A 
WHERE 
    C.DFECHAALBARAN IS NULL 
    AND C.CSERIE = D.CSERIE 
    AND C.NPEDIDO = D.NPEDIDO 
    AND D.NFABRICANTE = A.NFABRICANTE 
    AND D.CARTICULO = A.CARTICULO 
GROUP BY 
    D.NFABRICANTE, D.CARTICULO, A.CNOMBRE 

CANTIDAD1CARGA1CANTIDAD2CARGA1是數量是在數據庫(d.cantidad1,d,cantidad2是真正的名字,我要總結所有的人都得到CANTIDAD1和CANTIDAD2),但我需要得到對應於各個C.CARGA數量:

(CANTIDAD1 = CANTIDAD1CARGA1 + CANTIDAD1CARGA2) 

我怎樣才能獲得這些價值?

** C.NCARGA可以有多個值,我需要得到所有CANTIDAD1CARGA'x'CANTIDAD2CARGA'x'

I don't care if I have to use two querys, 
- one for CANTIDAD1 and CANTIDAD2 
- other for CANTIDAD1CARGA1, CANTIDAD2CARGA1, CANTIDAD1CARGA2... etc 
+0

它看起來像你想要的是一種Pivot,不幸的是在SqlLite中似乎不支持。這裏有一些[想法](http://stackoverflow.com/q/1237068/314291) – StuartLC

回答

0

我有一種感覺,我真的不理解的問題,但似乎你只需要:

SELECT CANTIDAD1CARGA1 + CANTIDAD1CARGA2 AS CANTIDAD1, 
     CANTIDAD2CARGA1 + CANTIDAD2CARGA2 AS CANTIDAD2, 
     CANTIDAD1CARGA1, CANTIDAD2CARGA1, CANTIDAD1CARGA2, CANTIDAD2CARGA2 
FROM ... 
+0

我已經編輯了第一篇文章。我沒有「CANTIDAD1CARGA1或CANTIDAD2CARGA1」,這有點難以解釋,我很抱歉。 –

+0

我不明白。請更新您的問題以顯示所有輸入表格。 – Barmar

+1

最好的做法是用一些示例數據和你的嘗試解決方案來製作一個sqlfiddle。 – Barmar