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: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

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, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, 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: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

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, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, 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: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

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, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, 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