By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
create table tbl1 (
name varchar(20),
amount int
);
create table tbl2 (
name varchar(20),
amount int
);
insert into tbl1 values ('Петр', 100),
('Вася', 200),
('Петр', 100),
('Вася', 200);
insert into tbl2 values ('Петр', 100),
('Вася', 200),
('Петр', 100),
('Вася', 200);
select * from tbl1;
select * from tbl2;
name | amount |
---|---|
Петр | 100 |
Вася | 200 |
Петр | 100 |
Вася | 200 |
name | amount |
---|---|
Петр | 100 |
Вася | 200 |
Петр | 100 |
Вася | 200 |
select name, amount from tbl1
union
select name, amount from tbl2;
name | amount |
---|---|
Петр | 100 |
Вася | 200 |
select name, amount from tbl1
union all
select name, amount from tbl2;
name | amount |
---|---|
Петр | 100 |
Вася | 200 |
Петр | 100 |
Вася | 200 |
Петр | 100 |
Вася | 200 |
Петр | 100 |
Вася | 200 |
select name, sum(amount)
from (
select name, amount from tbl1
union all
select name, amount from tbl2
) t
group by name;
name | sum(amount) |
---|---|
Вася | 800 |
Петр | 400 |