2016-12-12 67 views
0

這是我的第一個問題。我不知道標題是否清楚說明。 過去5天我一直堅持這一點。我無法在互聯網上的任何地方找到解決方案。我在Windows 8上使用Microsoft Access 2013.我有一個非常基本的sql編碼知識。根據不同的字段總計兩次相同的字段條件

我有下面的表格叫做「CustomerOperationTable」
CustomerName | OperationDate |借記|信用|
。---------------------- | --------------------- | ---- ---- | -------- |
CustomerA ...... | 01/01/2016 ..... | 2000 | 0 ...... |
CustomerA ...... | 08/01/2016 ..... | 1000 | 0 ...... |
CustomerA ...... | 29/01/2016 ..... | 0 ...... | 2500 |
CustomerA ...... | 02/02/2016 ..... | 2500 | 0 ...... |
CustomerA ...... | 03/04/2016 ..... | 3000 | 0 ...... |
CustomerA ...... | 04/04/2016 ..... | 0 ...... | 4000 |
CustomerB ...... | 02/03/2016 ..... | 2000 | 0 ...... |
CustomerB ...... | 03/03/2016 ..... | 0 ...... | 4000 |
CustomerB ...... | 04/03/2016 ..... | 3000 | 0 ...... |
CustomerB ...... | 05/04/2016 ..... | 0 ...... | 1000 |

The table in a picture made by Excel

它顯示了每個客戶的具體日期的操作。我試圖從查詢中做出報告。因此,我需要查詢以

  1. 組表由客戶名稱
  2. 顯示出借方的總和與信用的總和,其中OperationDate是< = 31/01/2016作爲Debit_OB和Credit_OB
  3. 顯示「再次」借記的總和與信用的總和,其中OperationDate是2016年1月2日和2016年1月11日

之間,從而其結果將是象下表

客戶名稱| Debit_OB | Credit_OB | Debit_CB | Credit_CB |
.--------------------- | -------------- | ---------- ----- | -------------- | --------------- |
CustomerA ........ | 3000 ....... | 2500 ......... | 5500 ....... | 4000 ......... |
CustomerB ........ | 0 .............. | 0 ................ | 5000 ....... | 5000 ......... |

The required Query Result made by excel

我嘗試了很多的解決方案,我在互聯網上找到,但沒有爲我工作。 我真的很感激你的幫助。 樂於提供完成結果所需的任何信息。

ps:請忽略爲格式化而添加的額外「.....」。

回答

0

我的解決方案往往令人不安,但嘿!我得到了要求的結果。
我的查詢語句:

SELECT YourTable.CustomerName, 
Sum(IIf([OperationDate]<=(#1/31/2016#),[Debit],0)) AS Debit_OB, 
Sum(IIf([OperationDate]<=(#1/31/2016#),[Credit],0)) AS Credit_OB, 
Sum(IIf([OperationDate]>(#1/31/2016#) And [OperationDate]<(#11/1/2016#),[Debit],0)), 
Sum(IIf([OperationDate]>(#1/31/2016#) And [OperationDate]<(#11/1/2016#),[Credit],0)) 
FROM YourTable 
GROUP BY YourTable.CustomerName; 

自動地工作,但性能將是記錄成千上萬的問題。

+0

它完美地工作。非常感謝你。我非常感謝你的幫助。我一直堅持這個爲soooooo ..真的,非常感謝您的幫助,先生^ _^ –

+0

@ kurrapicazoldik很高興幫助。只要標記答案是正確的。 – Lybren

+0

如果你願意,你的朋友G. Freecs會很高興。 祝您有美好的一天。 – Lybren

相關問題