Sql 使用access查询中的列总和联接两个表
我有两张表,如下所示。。 我需要在sql查询中使用join连接两个表,但我是新手,所以请帮助我。。 因为我需要输出表,如第三个表所示 tbl_月清单 待定金额: 我需要如下所示的输出Sql 使用access查询中的列总和联接两个表,sql,ms-access,Sql,Ms Access,我有两张表,如下所示。。 我需要在sql查询中使用join连接两个表,但我是新手,所以请帮助我。。 因为我需要输出表,如第三个表所示 tbl_月清单 待定金额: 我需要如下所示的输出 LEFT JOIN确保您仍然可以从tbl\u MonthList获取每一行,即使tbl\u Amount中没有匹配的行 然后它是一个正常的SUM(),带有一个groupby 由于没有数据的SUM() 还请注意,您的MonthID和month\u id字段名称不一致 SELECT t1.month,SUM(t2.a
LEFT JOIN
确保您仍然可以从tbl\u MonthList
获取每一行,即使tbl\u Amount
中没有匹配的行
然后它是一个正常的SUM()
,带有一个groupby
由于没有数据的SUM()
还请注意,您的MonthID
和month\u id
字段名称不一致
SELECT t1.month,SUM(t2.amount) as SUM FROM Table1 t1 LEFT JOIN Table2 t2 ON t1.monthid = t2.monthid GROUP BY t1.monthid
我刚刚整理了你的数据,你为什么要撤销?我建议您重新编辑问题,突出显示示例数据表,然后单击{}
按钮。这将使文本宽度固定,并使数据更易于阅读。您不能选择t1.month
,也不能选择GROUP BY t2.month\u id
。即使在MySQL中,这样做也意味着您没有返回所有12个必需的结果<代码>按t1分组。月份id
如果我必须从不同的表中添加一个与tbl\U月份列表表相同的列名,请原谅?我不明白你的意思。
Month_id Amount_Received Customer_id
3 500 aaa
3 1000 bbb
4 700 jjj
5 300 aaa
5 400 jjj
5 500 ppp
7 1000 aaa
10 1500 bbb
12 700 jjj
Month Total_amount
January 0
February 0
March 2000
April 700
May 1200
June 0
July 1000
August 0
September 0
October 1500
November 0
December 700
SELECT
tbl_MonthList.MonthList AS Month,
COALESCE(SUM(tbl_Amount.Amount_Received), 0) AS Total_amount
FROM
tbl_MonthList
LEFT JOIN
tbl_Amount
ON tbl_MonthList.MonthID = tbl_Amount.month_id
GROUP BY
tbl_MonthList.MonthList
SELECT t1.month,SUM(t2.amount) as SUM FROM Table1 t1 LEFT JOIN Table2 t2 ON t1.monthid = t2.monthid GROUP BY t1.monthid
SELECT Count(PINJAM.Tgl) AS Peminjam, DatePart("yyyy",[Tgl]) AS Tahun, DatePart("m",[Tgl]) AS Bulan, IIf(DatePart("m",[Tgl])=1,"Januari",IIf(DatePart("m",[Tgl])=2,"Februari",IIf(DatePart("m",[Tgl])=3,"Maret",IIf(DatePart("m",[Tgl])=4,"April",IIf(DatePart("m",[Tgl])=5,"Mei",IIf(DatePart("m",[Tgl])=6,"Juni",IIf(DatePart("m",[Tgl])=7,"Juli",IIf(DatePart("m",[Tgl])=8,"Agustus",IIf(DatePart("m",[Tgl])=9,"September",IIf(DatePart("m",[Tgl])=10,"Oktober",IIf(DatePart("m",[Tgl])=11,"November","Desember"))))))))))) AS Ket
FROM PINJAM
GROUP BY DatePart("yyyy",[Tgl]), DatePart("m",[Tgl]), Format([Tgl],"m/yyyy"), IIf(DatePart("m",[Tgl])>1,"Januari","Februari")
ORDER BY DatePart("yyyy",[Tgl]), DatePart("m",[Tgl]);