[英]Query in Oracle(select, sum and count using join)
Table 1 :- Registration table 表1:-登记表
Date_phy |Name |Address |Diseases |Mob | Advance |Code
12 March, 2017 |Navneet |Delhi |Fever |12345 | 1000 |2
12 March, 2017 |Ashutosh |Gurgaon |fever |4321 | 2000 |3
12 March, 2017 |Bitu |Mumbai |fever |2345 | 1500 |4
15 March, 2017 |Rashmi |pune |fever |34567 | 1600 |5
16 March, 2017 |komal |jaipur |fever |43215 | 7000 |6
Table 2 :- Attendence Table 表2:-出席表
Code |Name |Date_phy
2 |Navneet |13 March,2017
2 |Navneet |14 March,2017
2 |Navneet |15 March,2017
5 |Rashmi |16 March,2017
6 |komal |17 March,2017
Table 3:- Deposit Table 表3:-存款表
Code |Amount |Date_phy
2 |1000 |13 March,2017
2 |500 |14 March,2017
2 |500 |15 March,2017
5 |3000 |16 March,2017
6 |5000 |17 March,2017
I want following output in oracle. 我想在oracle中跟随输出。
Name |Date of Joining |Code |Total Paid(advance+deposit) |Total Present
Navneet |12 March,2017 |2 |3000 |3
Ashutosh |12 March,2017 |3 |2000 |0
Bitu |12 March,2017 |4 |1500 |0
Rashmi |15 March,2017 |5 |4600 |1
Komal |16 March,2017 |6 |12000 |1
I am not able to write a query. 我无法编写查询。 I have to merge three tables with sum and count function.
我必须合并具有求和和计数功能的三个表。 Tried every thing but failed.
尝试了一切,但失败了。 Could you please help me ?
请你帮助我好吗 ?
Query tried: 查询尝试:
SELECT pr.NAME,
pr.date_phy,
pr.disease
FROM physiofit_registration pr
LEFT JOIN (SELECT Sum(amount) totalAmount
FROM physiofit_amt_deposit
GROUP BY code) pd
ON pr.code = pd.code
LEFT JOIN (SELECT Count(*) totalatten,
FROM physiofit_attendence
GROUP BY code) pa
ON pr.code = pa.code;
try below 尝试下面
SELECT pr.NAME,
pr.date_phy,
pr.code,
pd.totalAmount+pr.advance as TotalPaid,
pa.totalatten as TotalPresent
FROM physiofit_registration pr
LEFT JOIN (SELECT code,Sum(amount) totalAmount
FROM physiofit_deposit
group by code
) pd
ON (pr.code = pd.code)
LEFT JOIN (SELECT code,Count(*) totalatten
FROM physiofit_attendence
GROUP BY code) pa
ON pr.code = pa.code;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.