Estrutura da tabela nome equipe
CREATE TABLE equipe (
Num varchar(15) NOT NULL,
Nome varchar(50) DEFAULT NULL,
Nacionalidade varchar(40) DEFAULT NULL
)
---------------------------------------------------------
Estrutura da tabela `nome piloto`
CREATE TABLE piloto (
Num varchar(15) NOT NULL,
Nome varchar(50) DEFAULT NULL,
sexo char(1) DEFAULT NULL,
DtNascimento date DEFAULT NULL,
pnacionalidade varchar(40) DEFAULT NULL,
Num varchar(15) DEFAULT NULL
)
---------------------------------------------------------
Estrutura da tabela `circuito`
CREATE TABLE circuito(
Num varchar(15) NOT NULL,
Nome varchar(50) DEFAULT NULL,
Cidade varchar(70) DEFAULT NULL,
Pais varchar(50) DEFAULT NULL
)
---------------------------------------------------------
Estrutura da tabela `disputa`
CREATE TABLE disputa(
CNum varchar(15) NOT NULL,
ANum varchar(15) DEFAULT NULL,
Pnum varchar(15) DEFAULT NULL,
Data date DEFAULT NULL,
Colocacao int(11) DEFAULT NULL,
)
as chaves estrangeiras são:
alter table PILOTO add constraint estrangeira_EqNum foreign key EqNum references Equipe(EqNum);
alter table Corrida add constraint estrangeira_ANum foreign key ANum references Autodromo(ANum);
alter table Corrida add constraint estrangeira_PNum foreign key PNum references Piloto(Pnum);
agora preciso que o sql me retorne: Listar o Nome, Sexo e Nacionalidade dos pilotos que venceram as corridas entre os anos de 2000 e 2003,
de equipe cuja nacionalidade não seja Brasileira ou Africana.
meu código tá assim e não consigo terminar se alguém puder ajudar fico grata.
SELECT `Nome`, `sexo`, `pnacionalidade` FROM `piloto`
WHERE pnacionalidade NOT IN ('brasileira', 'africana')
union
SELECT Colocacao FROM Corrida Where Colocacao = 1 NOT IN ('2010','2013')
erro:
Mensagens do MySQL :
#1222 - Os comandos SELECT usados têm diferente número de colunas