add batch remove batch split batch comment selection show hidden batches hide batch highlight batch
db<>fiddle
donate feedback about
By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE Author (code VARCHAR(2), Name VARCHAR(9));
INSERT INTO Author (code, Name) VALUES
('GB', 'George B.'),
('KL', 'Kyle L.'),
('DC', 'Donald C.'),
('RL', 'Roland L.');

CREATE TABLE Book (isbn INTEGER, author VARCHAR(2));
INSERT INTO Book (isbn, author) VALUES
('1111', 'GB'),
('2222', 'DC'),
('3333', 'RL');

CREATE TABLE Coauthor (name VARCHAR(2), isbn INTEGER);
INSERT INTO Coauthor (name, isbn) VALUES
('KL', '1111'),
('GB', '2222'),
('GB', '3333');
SELECT a.code, a.name,
COUNT(DISTINCT b.isbn) + COUNT(DISTINCT c.isbn) count
FROM Author a
LEFT JOIN Book b ON b.author = a.code
LEFT JOIN Coauthor c ON c.name = a.code
GROUP BY a.code, a.name;
code name count
DC Donald C. 1
GB George B. 3
KL Kyle L. 1
RL Roland L. 1