现在两个表:user,user_lower
user_lower主要记录上下级关系的
u_id用户ID,lowerid下级ID
用户关系,请看图。
现在需要进行分组求A,B,C用户下的money字段的总和
create table user
(
id int auto_increment primary key,
username varchar(32) collate utf8_unicode_ci not null,
password char(32) collate utf8_unicode_ci not null,
parentid int null, comment '上级ID,最上级为0',
money decimal(11,4) default 0 null, comment '金额',
constraint name
unique (username)
)
create table user_lower
(
u_id int not null,
lowerid int not null,
primary key (u_id, lowerid)
)
这种求和的方式一般都会在程序里面采用递归的方式进行计算,在MySql里面计算的话太消耗性能了。