私は情報を持つ2つのテーブルを持っています:ID、persona_id、total_amount ペルソナIDは何度も繰り返すことができます。だから私は、クエリのすべての1つのIDがTOTAL_AMOUNTを取得:データ形式を取得する2つのテーブルと結果の合計値
select d.id as debt_id, p.name as persona, sum(d.total_amount) as total_amount
from debt d
join persons p on d.persona_id = p.id group by p.name
私は1つのクエリ内の各テーブルからデータを取得し、TOTAL_AMOUNT欄でaritmethic propertysを行うと、1 tabelとしてそれを返すようにしたいです。合計列の( - 、+、/、*)iは演算とcomined 2つのテーブルを取得したい結果
表1
id persons_id total_amount
1 2 50
2 3 100
3 2 200
4 5 300
5 1 500
表2
id persons_id total_amount
1 2 25
2 1 100
3 5 50
4 3 100
5 4 300
。基本的には、私はさまざまな場合に必要なフォームの最終的な合計金額を取得する変更。
select c.id, c.persona_id, c.total_amount - d.total_amount as new_total
from ( select c.id , c.persona_id, sum(c.total_amount) as total_amount from credit c
join persons p on c.persona_id = p.id
group by p.name) c
inner join ( select d.id, d.persona_id, sum(d.total_amount) as total_amount from debt d
join persons p on d.persona_id = p.id
group by p.name) d
on c.persona_id = d.persona_id
group by c.id, c.persona_id
最初の質問「同じ構造の2つのテーブルを持っているのはなぜですか? – RiggsFolly
@ RiggsFolly提示された構造がクエリと一致しないので、私はOPが「読みやすくする」ためにいくつかの情報を「残した」と仮定します。私たちは3つの異なるテーブルを持つことさえあります。 –
私は全く同じ構造の2つのテーブルを持っていますが、1つのテーブルに保持されている木材はサイトaで選んだ木材の量を保持しますが、他のものはサイトbで石炭量を保持しますが、 Myb問題は2つのテーブルに情報を分割することですか? –