Outro que não deu certo, selecionar o que não tem

Forum sobre SQL.

Moderador: Moderadores

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Outro que não deu certo, selecionar o que não tem

Mensagem por JoséQuintas »

Código: Selecionar todos

         :cSQL := "SELECT PCPRODUTO, PCFORPAG, PCURGENTE, IENOME, FORPAGNOME" + ;
            " FROM JPPRECO" + ;
            " LEFT JOIN JPITEM ON IDPRODUTO=PCPRODUTO" + ;
            " LEFT JOIN JPTABFORPAG ON IDFORPAG=PCFORPAG" + ;
            " WHERE PCCADASTRO = " + NumberSQL( nIdCadastro ) + ;
            " AND NOT PCPRODUTO, PCFORPAG, PCURGENTE IN" + ;
            " ( SELECT PCPRODUTO, PCFORPAG, PCURGENTE" + ;
            " FROM JPPRECO WHERE PCCADASTRO = " + NumberSQL( cnSQLGeral:Number( "PCCADASTRO" ) ) + " )"
selecionar tabelas de uma empresa que não tem na outra.
3 campos: produto, forma de pagamento e urgente
Por acaso entendi errado o uso ?
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Outro que não deu certo, selecionar o que não tem

Mensagem por JoséQuintas »

mudei pra isto

Código: Selecionar todos

SELECT a.PCPRODUTO, a.PCFORPAG, a.PCURGENTE, IENOME, FORPAGNOME
FROM jppreco AS A
LEFT JOIN JPITEM ON IDPRODUTO=a.PCPRODUTO
LEFT JOIN JPTABFORPAG ON IDFORPAG=a.PCFORPAG
LEFT JOIN jppreco AS B ON a.pcproduto=b.pcproduto AND a.pcforpag=b.pcforpag AND a.pcurgente=b.pcurgente AND b.pccadastro=84053
WHERE a.PCCADASTRO = 85430 AND b.pcproduto IS null
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Outro que não deu certo, selecionar o que não tem

Mensagem por JoséQuintas »

E vamos complicar:

Aí é uma empresa, agora fazer pra várias...

O caso acima é pra validar um código digitado.

Mas também pego a lista de todas que podem ser adicionadas, e a condição acima seria impeditiva.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Responder