Ir para conteúdo
Fórum Script Brasil
  • 0

Duvida JOIN (iniciante)


SaraYasmin

Pergunta

Boa tarde galera. Minha duvida é a seguinte, como usa o JOIN. To tentando fazer uma atividade aqui (revisão pra prova) e não faço a menor ideia de como fazer.

Não sei direito como explicar, mas é tipo assim, esse é o código que eu mesma fiz.

create table endereco (id integer primary key not null, rua varchar (45)not null, bairro varchar(45)not null, numero varchar (45));

create table pessoa (id_pessoa integer primary key not null, nome varchar (45) not null, email varchar (45)not null,

sexo varchar (1)not null, idade integer, id_endereco integer references endereco);

create table funcionario (id_funcionario integer primary key not null, salario numeric (4,2)not null,

admissão date not null, id_pessoa integer references funcionario);

create table cliente(id_cliente integer primary key not null, data_registro date not null, id_pessoa integer references pessoa,

cor_cabelo varchar (45), cor_pele varchar (45));

insert into endereco values (1,'todos os santos', 'franciscanos','12')

insert into endereco values (2,'Santa Luzia', 'São Miguel','13')

insert into endereco values (3,'beata M. de araujo', 'Rabo da gata','14')

insert into pessoa values (1, 'Sara', 'sarabrito@gmail.com', 'F', 20,1)

insert into pessoa values(2, 'Deigo Arrais', 'diego@gmail.com', 'M', 18, 2)

insert into pessoa values(3,'Maria Lais','marialais@gmail.com', 'M', 21, 3)

insert into funcionario values(1, 99.99, '12/11/2012', 1)

insert into funcionario values(2, 99.99, '09/01/2012',2)

insert into funcionario values(3, 10.99,'11/12/2012',3)

insert into cliente values (1,'06/11/2011',1,'preto','branco')

insert into cliente values (2,'06/11/2011',2,'castanho','branco')

insert into cliente values (3,'06/11/2011',3,'ruivo','branco')

dai ele pede pra exibir o nome dos funcionários que recebem mais de 87.59 em ordem alfabética. Só que como vocês podem ver a coluna 'nome' está na tabela pessoa e a coluna 'salario' esta na tabela funcionário. Eu não sei como juntar as duas e ainda por em ordem alfabética. Uma ajudinha seria muito bom já que a prova é amanhã. D=

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
Boa tarde galera. Minha duvida é a seguinte, como usa o JOIN. To tentando fazer uma atividade aqui (revisão pra prova) e não faço a menor ideia de como fazer.

Não sei direito como explicar, mas é tipo assim, esse é o código que eu mesma fiz.

create table endereco (id integer primary key not null, rua varchar (45)not null, bairro varchar(45)not null, numero varchar (45));

create table pessoa (id_pessoa integer primary key not null, nome varchar (45) not null, email varchar (45)not null,

sexo varchar (1)not null, idade integer, id_endereco integer references endereco);

create table funcionario (id_funcionario integer primary key not null, salario numeric (4,2)not null,

admissão date not null, id_pessoa integer references funcionario);

create table cliente(id_cliente integer primary key not null, data_registro date not null, id_pessoa integer references pessoa,

cor_cabelo varchar (45), cor_pele varchar (45));

insert into endereco values (1,'todos os santos', 'franciscanos','12')

insert into endereco values (2,'Santa Luzia', 'São Miguel','13')

insert into endereco values (3,'beata M. de araujo', 'Rabo da gata','14')

insert into pessoa values (1, 'Sara', 'sarabrito@gmail.com', 'F', 20,1)

insert into pessoa values(2, 'Deigo Arrais', 'diego@gmail.com', 'M', 18, 2)

insert into pessoa values(3,'Maria Lais','marialais@gmail.com', 'M', 21, 3)

insert into funcionario values(1, 99.99, '12/11/2012', 1)

insert into funcionario values(2, 99.99, '09/01/2012',2)

insert into funcionario values(3, 10.99,'11/12/2012',3)

insert into cliente values (1,'06/11/2011',1,'preto','branco')

insert into cliente values (2,'06/11/2011',2,'castanho','branco')

insert into cliente values (3,'06/11/2011',3,'ruivo','branco')

dai ele pede pra exibir o nome dos funcionários que recebem mais de 87.59 em ordem alfabética. Só que como vocês podem ver a coluna 'nome' está na tabela pessoa e a coluna 'salario' esta na tabela funcionário. Eu não sei como juntar as duas e ainda por em ordem alfabética. Uma ajudinha seria muito bom já que a prova é amanhã. D=

Hello Sara,

Será desta maneira, espero que tenha lhe ajudado :)

select pes.nome

,fun.salario

from funcionario as fun inner join pessoa as pes

on fun.id_pessoa = pes.id_pessoa

where fun.salario > '87.59'

order by pes.nome

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...