顯示一列我有兩個表子查詢到一個表作爲兩個單獨的列
Ledgers Table
==============
ledger_id ledger_name open_bal close_bal dr_bal cr_bal
--------- --------- --------- --------- ------ ------
1 Bank A/C 0 5000 5000 0
2 Capital A/C 0 -50000 0 50000
3 Cash A/C 0 30700 53500 22800
Transactions Table
==============
trans_id trans_date ledger_id ledger_name amount trans_type
--------- --------- --------- --------- --------- ---------
1 2004-01-01 3 Cash A/C 50000 Dr
2 2004-01-01 2 Cap A/C 50000 Cr
3 2004-01-02 9 Purchase A/C 10000 Dr
這是我的表,有什麼想實現是讓賬簿餘額特定月份。這裏不是試圖將數據插入到表中。
使用上面兩個表我只需要查詢和出把結果作爲
Desired Output
==============
ledger_id ledger_name amount trans_type As Debit trans_type as Credit
--------- --------- ------ --------- ---------
3 Cash A/C 50000 Dr Null
2 Capital A/C 50000 Null Cr
所以分別顯示在這裏TRANS_TYPE場DR作爲借方和鉻作爲學分。這是我想要實現的。
我到現在爲止所嘗試的是加入交易表與分類帳!但是,通過查詢這兩個表,我無法獲得所需的輸出結果。
這是我曾經嘗試過,
SELECT tr.trans_date, tr.amount, tr.ledger_id, l.ledger_name, tr.trans_type
FROM tbl_transaction tr LEFT JOIN tbl_ledgers l
ON l.ledger_id = tr.ledger_id WHERE trans_date BETWEEN '2004-01-01' AND '2004-01-31';
所以我基本上想知道如何才能實現這一目標? trans_type列拆分成兩個「Dr」分開和「Cr」分開?
您可以在此更改示例輸出以顯示實際存在於「交易」表中的行嗎?您發佈的示例沒有'ledger_id = 1'的行,儘管我認爲我理解了這個要求,但是看到_exactly_是給定示例輸入應該生成的輸出很有幫助。 –
我想澄清的另一件事 - 這看起來像只將Dr,Cr分隔爲單獨的列,但在一列中列出了相關的「數量」。這是正確的,還是有意爲每個分類賬編號創建一個聚合「SUM()」? –
@MichaelBerkowski,是的你是對的,我只想把Dr,Cr分成不同的欄目,並在欄目中填入金額。 – shiva86