我有一个查询,它会返回以下数据。
1 - 第1类
1.1子类别1
1.1.1 - 次级别类别1 $ 10
1.1.2 - 次级别类别2 $ 10
1.1.3 - 次级别类别3 $ 10
1.2-子类别1
1.2.1 - 次级别类别1 $ 20
1.2.2 - 次级别类别2 $ 20
1.2.3 - 次级别类别3 $ 20
2 - 第2类
2.1 - 次级别2
2.1.1 - 次级别类别1 $ 30
2.1.2 - 次级别类别2 $ 30
2.1.3 - 次级别类别3 $ 30
我希望在每个子类别总计下返回我的查询。 想要它如下所示 例如:
1 - 第1类
1.1子类别1
1.1.1 - 次级别类别1 $ 10
1.1.2 - 次级别类别2 $ 10
1.1.3 - 次级别类别3 $ 10
总共30美元1.2-子类别1
1.2.1 - 次级别类别1 $ 20
1.2.2 - 次级别类别2 $ 20
1.2.3 - 次级别类别3 $ 20
总共60美元2 - 第2类
2.1 - 次级别2
2.1.1 - 次级别类别1 $ 30
2.1.2 - 次级别类别2 $ 30
2.1.3 - 次级别类别3 $ 30
总计$ 90
我将PHP与MySql一起使用
我的查询是这样的
SELECT cm.cat, cm.subcat, cm.subsubcat, cm.title, cm.typo,
(SELECT SUM(rg.value) FROM tt_record rg WHERE rg.cat = cm.cat AND
rg.subcat = cm.subcat AND rg.subsubcat = cm.subsubcat
AND rg.igreja = 'XXX' AND MONTH(rg.date) = 01 AND YEAR(rg.date) = 2015) Sum,
(SELECT SUM(rg.value) FROM tt_record rg WHERE rg.cat = cm.cat
AND rg.subcat = cm.subcat AND cm.subsubcat IS NULL
AND rg.igreja = 'XXX' AND MONTH(rg.date) = 01 AND YEAR(rg.date) = 2015) SubCategory,
(SELECT SUM(rg.value) FROM tt_record rg WHERE rg.cat = cm.cat AND cm.subcat IS NULL
AND cm.subsubcat IS NULL AND rg.igreja = 'XXX' AND MONTH(rg.date) = 01 AND YEAR(rg.date) = 2015
) Category
FROM tt_cta_mestre cm
LEFT JOIN tt_cta_mestre cm2 ON cm2.cat = cm.cat AND cm2.subcat = cm.subcat
AND cm2.subsubcat = cm.subsubcat
ORDER BY cm.cat, cm.subcat, cm.subsubcat
tt_cta_mestre该表是我存储我的类别,子类别和子子类别的地方。他们有cat field,subcat,subsubcat。 如果Category subcat字段和subsubcat将为空。
如果subategory subsubcat字段为空。
如果subsubcat填充了三个字段。
我存储记录的表是输入和输出及其值。 每条记录都链接到子子目录