Рассмотрим следующее:
create table users
(user_id serial primary key,name char(2) unique
);
insert into users values (101,'U1'),(102,'U2');
create table user_objects
(user_id int not null
,object_id int not null
,primary key(user_id,object_id)
);
insert into user_objects values
(101,1),
(101,2),
(101,3);
create table object_items
(object_id int not null
,item_id int not null
,primary key(object_id,item_id)
);
insert into object_items values
(1,1001),
(1,1002),
(1,1003),
(1,1004),
(1,1005),
(2,1001);
select u.name
, count(distinct uo.object_id) objects
, count(oi.item_id) items
from users u
left
join user_objects uo
on uo.user_id = u.user_id
left
join object_items oi
on oi.object_id = uo.object_id
group
by u.user_id;
http://sqlfiddle.com/#!9/d2285/1