CONSULTA SQL

ARCADYUM 02/06/2010 11:37:08
#343675
Prezados Senhores,
Gostaria da ajuda de vocês em uma pesquisa. Preciso selecionar somente os registros não encontrados entre duas tabelas. é o seguinte:
Tenho uma tabela “X” que possue, supondo 15 registros.
Desses quinze registros eu selecionei 10 registros que foram gravados na tabela “Y”.

Bem agora eu preciso demonstrar os registros que não foram gravados na tabela “Y”, que no exemplo citado seriam 05 registros.

Segue exemplo do código que tentei e não deu certo.

[Ô]SELECT X.COL, X.COL1, Y.COL, Y.COL1 FROM X INNER JOIN Y ON X.COL1 <> Y.COL1 WHERE Y.COL =[ô][Ô] & TEXTBOX1.value & [Ô] [ô][Ô].

Se eu coloco X.COL2 = Y.COL1 aparece os que foram gravados na tabela Y, se eu coloco <> aparece todos os registros da tabela Y

Aguardando notícias
THIGO 02/06/2010 13:24:12
#343692
Amigo já tentou fazer assim qual o banco de dados que vc usa mais vai ae ve se ajuda

SELECT X.COL, X.COL1, Y.COL, Y.COL1
[ô]Aqui coloquei apelido no from voce pode usar duas tabelas conforme eu fiz
FROM X X, Y Y
WHERE Y.COL = [ô][Ô] & TEXTBOX1.value & [Ô] [ô] [Ô]
And X.COL1 <> Y.COL1


Mas explica melhor, pode haver o mesmo registro nas duas tabelas.

no From voce pode colocar duas tabelas sem problemas sem user o inner

Select A.ID, B.Nome
from cadastro A, Cad_Nome B


Qualquer duvida pergunta ae creio que somente select ja ageita o que quer flw

ARCADYUM 02/06/2010 13:35:46
#343693
Thiago,
Em uma tabela há alguns dados que cadastrei previamente(Tabela [Ô]x[Ô]). Na outra o usuário vai escolher quais dados da tabela [Ô]x[Ô] ele vai querer cadastrar na tabela [Ô]y[Ô]. e codigo vai demonstrar quais dados da tabela [ô][ô]x[Ô][ô] ainda não foram cadastradas na tabela [Ô]y[Ô].
Como expliquei anteriormente de 15 registros da tabela [Ô]x[Ô], 10 foram cadastradas na tabela [Ô]y[Ô] e ainda faltam 05 a serem cadastradas. Gostaria de demonstrar exatamente esse 05 que ainda faltam da tabela [Ô]x[Ô].
Vou testar o codigo que postou e retorno.
Obrigado pela atenção.
ARCADYUM 02/06/2010 14:24:44
#343698
Infelizmente não funcionou,
Alguma outra sugestão?
THIGO 02/06/2010 15:42:40
#343720
Amigo vamos lá

Você tem a tabela A que contem 15 registros certo, na tabela B tem 10 registros que possui na tabela A correto

Então o Select que te passei tras somente os diferente de tabela a exemplo novamente.

Vou trazer somente da tela A diferente segue o exemplo

Selec A.ID, A.Nome 
From Cadastro_1 A, Cadastro_2 B
Where A.Id <> B.Id


Me mostre o que esta fazendo poste o seu select.
ARCADYUM 02/06/2010 16:33:44
#343734
Thiago,
Segue o comando:

[Ô]SELECT ORCAMENTO.ORCAMENTO, ORCAMENTO.PRODUTO, COMPRAS.ORCAMENTO, COMPRAS.PRODUTO FROM ORCAMENTO, COMPRAS WHERE ORCAMENTO.ORCAMENTO =[ô][Ô] & TXT_ORCAMENTO.value & [Ô][ô] AND COMPRAS.PRODUTO <> ORCAMENTO.PRODUTO[Ô]

Conforme expliquei tenho os 15 registros na tabela orcamento, na tabela compras eu cadastro alguns ou todos os dados que estão na tabela orcamento, neste caso eu fiz uma suposicao de ter cadastrado somente 10 registros. Gostaria de visualizar agora somente os 05 registros que não foram cadastrados na tabela compras. O campo orcamento é comum nas duas tabelas. (Chave estrangeira).
Aguardo notícias
THIGO 02/06/2010 16:58:06
#343736
Acho que entendi veja se isso ajuda

nao e preciso colocar no corpo do select ORCAMENTO.ORCAMENTO, ORCAMENTO.PRODUTO, basta colocar da tabela que vai querer que é o resulta de compras correto

Veja o select abaixo eu coloquei o apelido da tabela mais facil A para ORCAMENTO e B para COMPRAS, tenta trabalhar assim e mais facil

Nesse select vai trazer diferente o produto e nao o orcamento
SELECT B.ORCAMENTO,
B.PRODUTO
FROM ORCAMENTO A, COMPRAS B
WHERE A.ORCAMENTO = [ô][Ô] & TXT_ORCAMENTO.value & [Ô][ô]
AND B.PRODUTO <> A.PRODUTO


A vi que se falou que ORCAMENTO e comum nas duas tabelas entao e assim que tem que ficar, aqui sim vai trazer
SELECT B.ORCAMENTO,
B.PRODUTO
FROM ORCAMENTO A, COMPRAS B
WHERE A.ORCAMENTO = [ô][Ô] & TXT_ORCAMENTO.value & [Ô][ô]
AND B.ORCAMENTO <> A.ORCAMENTO


Qualquer duvida me pergunte, lembrando vai mostrar somente a da tabela compras ok
MARCIO.ROGERIO 02/06/2010 17:18:29
#343740
Resposta escolhida
Olá,


select codigo from tabela1 where codigo not in (select codigo from tabela2)

Até,

Rogério.
ARCADYUM 02/06/2010 17:57:39
#343742
Valeu Thiago,
Valeu Marcio,
Funcionou!!
Encerrando o tópico
Tópico encerrado , respostas não são mais permitidas