私は3つのテーブルfinancial_years、house_details、consumer_detailsを持っています。私はSqlfiddleで私のスキーマを追加しました:http://sqlfiddle.com/#!9/dd527d/2と私の期待された結果は、以下の長さのためにラップされます。私が試したクエリがあります。joinとgroupを使用して3つのテーブルから値を取得する
問合せ:
SELECT c.consumer_name as Name
,c.house_number
,c.address
,sum(CASE WHEN h.subincome = 'Garbage tax' THEN f.garbage_tax else 0 end) -
sum(CASE WHEN h.subincome = 'Garbage tax' THEN h.rupees else 0 END) as gtax
,sum(CASE WHEN h.subincome = 'House tax' THEN f.house_tax else 0 end) -
sum(CASE WHEN h.subincome = 'House tax' THEN h.rupees else 0 END) as htax,
,sum(CASE WHEN h.subincome = 'Light tax' THEN f.light_tax else 0 end) -
sum(CASE WHEN h.subincome = 'Light tax' THEN h.rupees else 0 END) as LTAX
from house_details h
INNER JOIN financial_year f ON h.financial_year = f.year
AND h.house_id = f.house_number
INNER JOIN consumer_details c ON h.house_id = c.house_number
AND h.financial_year != '2017-2018'
GROUP BY c.consumer_name
,c.house_number
,c.address
期待される結果:
:数字が予想よりも大きい場合は、ここでの説明と何をすべきかの手がかりが
sid | name | house_no | address | arrears
---------------------------------------------------------------------
house_tax | light_tax | garbage_tax
---------------------------------------------------------------------
22 Bala 22 Mumbai 145 710 450
25 Kannan 25 Pune 704 803 630
2 Arul 2 Delhi 60 570 590
current | total
------------------------------------------------------------------------
house_tax | light_tax | garbage_tax | house_tax | light_tax | garbage_tax
------------------------------------------------------------------------
300 400 500 445 1110 950
550 567 543 1254 1370 1173
700 800 900 760 1370 1490
receipt_no | collection
------------------------------------------------------------------------
house_tax | light_tax | garbage_tax | house_tax | light_tax | garbage_tax
------------------------------------------------------------------------
312,313,314 309,310,311 288,304,308 400 540 484
407,408,409 404,405,406 401,402,403 921 915 905
410 - - 500 0 0
balance
------------------------------------
house_tax | light_tax | garbage_tax
------------------------------------
45 570 466
333 455 268
260 1370 1490
あなたの期待した結果のリンクは私にとっては機能しません。質問に直接入力と出力のサンプルを表示し、各行に4つ以上の先行スペースがあるコードとしてフォーマットされた完全な質問をしてください。 –
ここに期待した結果を質問に投稿してください。サンプルデータの期待される結果のみが提供されます。 –
Fiddlesと望みの結果は素晴らしいですが、質問にも貼り付けるので、このページから移動する必要はありません。 – Strawberry