create table person(PersonID integer,Name varchar(10),Email varchar(35),Score integer);

insert into person(PersonID,Name,Email,Score)
values(1,'Alice','[email protected]',88),(2,'Bob','[email protected]',11),(3,'Davis','[email protected]',27),
(4,'Tara','[email protected]',45),(5,'John','[email protected]',63);

select * from person;

create table friend(PersonID integer, FriendId integer);
insert into friend values(1,2),(1,3),(2,1),(2,3),(3,5),(4,2),(4,3),(4,5);

select * from friend;


with t1 as (
select f.PersonID,count(*) as number_of_friends,sum(p.Score) as sum from 
friend f join person p  on f.FriendId=p.PersonID 
group by f.PersonID having sum(p.Score)>100)
select t1.*,p.Name as person_name from t1 join person p on t1.PersonID=p.personId; 
by