Considere o seguinte esquema de um banco de dados relacional, expresso em linguagem SQL:
create table editora
(
cod_editora integerprimary key,
nome_editora varchar(30) not null,
telefone char(11)
);
create table livro
(
cod_livro integerprimary key,
num_isbn char(10) unique not null,
titulo varchar(20) not null,
edicao integerdefault 1 not null,
cod_editora integerreferences editora
);
Após criadas, os comandos de inserção a seguir foram executados:
insert into editora values (1,'Ed1','2222-3333'), (2,'Ed2',NULL);
insert into livro values (1,'111','Livro1',2,NULL), (2,'222','Livro2',2,1), (5,'555','Livro5',1,1);
insert into livro(cod_livro,num_isbn,titulo,cod_editora) values (3,'333','Livro3',2),
(4,'444','Livro4',2);
A consulta select * from livro where exists (select distinct * from editora) and edicao%2 <> 0 produz como resultado a seguinte quantidade de linhas: