首页 > 解决方案 > 显示数据库中的目录列表等数据(PHP SQL)

问题描述

当我想显示数据库中的数据时遇到问题..

t_group :

t_type:

t_detail :

我尝试像这里显示数据列表:

但我的代码在这里:

SELECT t_detail.id_detail, t_detail.name_detail, t_detail.qty,
       t_type.name_type,
       t_group.name_group
FROM t_detail, t_type, t_group
WHERE t_detail.id_type = t_type.id_type
AND t_detail.id_group = t_group.id_group

结果如下:

我想像这样显示它:

有人请指导我吗?非常感谢

标签: phphtmlsqlhtml-table

解决方案


您必须使用UNIONANDSUM函数来获得预期的结果。

SELECT name_detail,id_detail as name , qty  FROM t_detail

UNION 

SELECT t_group.name_group,t_group.id_group as name, (SELECT sum(t_detail.qty)  FROM t_detail WHERE t_detail.id_group=t_group.id_group GROUP BY t_detail.id_group) AS qty FROM t_group

UNION 

SELECT name_type , id_type as name, (select sum(t_detail.qty)  from t_detail where t_detail.id_type = t_type.id_type
GROUP BY t_detail.id_type) as qty FROM t_type ORDER BY `name`  ASC

最好逐步构建查询,以便您能够更快更轻松地获得答案。

我希望这能帮到您。


推荐阅读