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

Selecionar dados de uma tabela q não estejam em outra


Guest Christian Koji

Pergunta

Guest Christian Koji

quero seleciona todos as linhas de uma tabela "a", desde que essas linhas não estejam presentes na tabela "b", como faço isso com consulta sql, estou usando o mysql.

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
-------------------------------------------------------
---------- Not exists 01 --------------------------
-------------------------------------------------------
create table #Tráfego (SERIAL_NUMBER int)
create table #Geral (SERIAL_NUMBER int)

insert into #Tráfego (SERIAL_NUMBER) values (1)
insert into #Tráfego (SERIAL_NUMBER) values (2)
insert into #Tráfego (SERIAL_NUMBER) values (3)
insert into #Tráfego (SERIAL_NUMBER) values (4)

insert into #Geral (SERIAL_NUMBER) values (1)
insert into #Geral (SERIAL_NUMBER) values (3)

SELECT         #Tráfego.SERIAL_NUMBER
FROM         #Tráfego  
FULL JOIN     #Geral ON #Tráfego.SERIAL_NUMBER = #Geral.SERIAL_NUMBER 
WHERE        #Geral.SERIAL_NUMBER IS NULL



SELECT     Tráfego.SERIAL_NUMBER
FROM     #Tráfego  Tráfego
WHERE     NOT EXISTS (select Geral.SERIAL_NUMBER from #Geral Geral WHERE Geral.SERIAL_NUMBER = Tráfego.SERIAL_NUMBER)



---------------------------------------------------------------------
--------------------Not exists 02-----------------------------------
--------------------------------------------------------------------
create table #Empresas  (Cd_Empresa int,Sequencia int, Situacao  char(1))
insert into #Empresas  (Cd_Empresa ,Sequencia , Situacao) values (1,100,'A')
insert into #Empresas  (Cd_Empresa ,Sequencia , Situacao) values (2,200,'B')
insert into #Empresas  (Cd_Empresa ,Sequencia , Situacao) values (3,300,'C')

create table #Tabela_Socios  (Matricula int, Cd_Empresa int, Sequencia int, Situacao char(1))
insert into #Tabela_Socios  (Matricula, Cd_Empresa, Sequencia, Situacao) values (1,2,600,'A')
insert into #Tabela_Socios  (Matricula, Cd_Empresa, Sequencia, Situacao) values (2,2,700,'C')



select * from #empresas e   
where not exists 
    (select s.Cd_Empresa 
    from #Tabela_Socios s 
    where e.Cd_Empresa = s.Cd_Empresa) and e.situacao = 'A'


select * from #empresas e   
where e.Cd_Empresa not in 
    (select s.Cd_Empresa from #Tabela_Socios s 
    where e.Cd_Empresa = s.Cd_Empresa) and e.situacao = 'A'

Link para o comentário
Compartilhar em outros sites

  • 0
Guest christian koji

Opa, desculpa mesmo não tinha visto.. =/

mas mesmo assim brigado pela ajuda funcionou certinho...

meu querido

o forum de MYSQL é outro.....

mas tenta..

select cod from a

where cod not in (select cod from B)

Link para o comentário
Compartilhar em outros sites

  • 0
Guest christian koji

Brigado pela ajuda tb, bem completa por sinal...

-------------------------------------------------------
---------- Not exists 01 --------------------------
-------------------------------------------------------
create table #Tráfego (SERIAL_NUMBER int)
create table #Geral (SERIAL_NUMBER int)

insert into #Tráfego (SERIAL_NUMBER) values (1)
insert into #Tráfego (SERIAL_NUMBER) values (2)
insert into #Tráfego (SERIAL_NUMBER) values (3)
insert into #Tráfego (SERIAL_NUMBER) values (4)

insert into #Geral (SERIAL_NUMBER) values (1)
insert into #Geral (SERIAL_NUMBER) values (3)

SELECT         #Tráfego.SERIAL_NUMBER
FROM         #Tráfego  
FULL JOIN     #Geral ON #Tráfego.SERIAL_NUMBER = #Geral.SERIAL_NUMBER 
WHERE        #Geral.SERIAL_NUMBER IS NULL



SELECT     Tráfego.SERIAL_NUMBER
FROM     #Tráfego  Tráfego
WHERE     NOT EXISTS (select Geral.SERIAL_NUMBER from #Geral Geral WHERE Geral.SERIAL_NUMBER = Tráfego.SERIAL_NUMBER)



---------------------------------------------------------------------
--------------------Not exists 02-----------------------------------
--------------------------------------------------------------------
create table #Empresas  (Cd_Empresa int,Sequencia int, Situacao  char(1))
insert into #Empresas  (Cd_Empresa ,Sequencia , Situacao) values (1,100,'A')
insert into #Empresas  (Cd_Empresa ,Sequencia , Situacao) values (2,200,'B')
insert into #Empresas  (Cd_Empresa ,Sequencia , Situacao) values (3,300,'C')

create table #Tabela_Socios  (Matricula int, Cd_Empresa int, Sequencia int, Situacao char(1))
insert into #Tabela_Socios  (Matricula, Cd_Empresa, Sequencia, Situacao) values (1,2,600,'A')
insert into #Tabela_Socios  (Matricula, Cd_Empresa, Sequencia, Situacao) values (2,2,700,'C')



select * from #empresas e   
where not exists 
    (select s.Cd_Empresa 
    from #Tabela_Socios s 
    where e.Cd_Empresa = s.Cd_Empresa) and e.situacao = 'A'


select * from #empresas e   
where e.Cd_Empresa not in 
    (select s.Cd_Empresa from #Tabela_Socios s 
    where e.Cd_Empresa = s.Cd_Empresa) and e.situacao = 'A'

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,3k
    • Posts
      652,3k
×
×
  • Criar Novo...