- Este tópico contém 4 respostas, 3 vozes e foi atualizado pela última vez 15 anos atrás por
augustoca.
-
AutorPosts
-
9 de março de 2011 às 9:27 pm #98499
augustoca
ParticipanteOlá pessoal,
Estou com o seguinte problema. Minhas pessoas podem estar associadas a várias classes. Por exemplo, pessoa A (classe 1, classe 2, classe 3).O que preciso é selecionar todas pessoas que estejam na classe 1 e classe 2, porém destas pessoas eu quero que as da classe 3 não sejam selecionada.
Ou seja
Pessoa A (Classe: 1,2,3)
Pessoa B (Classe: 1,2,5)
Pessoa C (Classe: 1,2,10)Nesse caso só a pessoa B e C seriam selecionadas. Estou utilizando o Exists e esta ficando dessa maneira
AND EXISTS(SELECT NCODIENTI
FROM TCHE_DIAGRO.CFGCLEN
WHERE CFGCLEN.NCODIENTI = CFGENTI.NCODIENTI
AND NCODICLAS IN (1,2))AND NOT EXISTS(SELECT NCODIENTI
FROM TCHE_DIAGRO.CFGCLEN
WHERE CFGCLEN.NCODIENTI = CFGENTI.NCODIENTI
AND NCODICLAS IN (3))
Alguém me sugere algo?
10 de março de 2011 às 3:35 pm #98504Leonardo Litz
ParticipanteOlá augustoca
Da forma que vc postou, não funcionou?? Qual o problema em utilizar o exists e o not exists?
Valeu Leonardo Litz.
10 de março de 2011 às 4:11 pm #98506burga
ParticipanteNo caso você deve por 3 EXISTS, 1 pra cada classe, senão ele faz um OR pras classes 1 e 2:
AND EXISTS(SELECT NCODIENTI
FROM TCHE_DIAGRO.CFGCLEN
WHERE CFGCLEN.NCODIENTI = CFGENTI.NCODIENTI
AND NCODICLAS = 1)
AND EXISTS(SELECT NCODIENTI
FROM TCHE_DIAGRO.CFGCLEN
WHERE CFGCLEN.NCODIENTI = CFGENTI.NCODIENTI
AND NCODICLAS = 2)
AND NOT EXISTS(SELECT NCODIENTI
FROM TCHE_DIAGRO.CFGCLEN
WHERE CFGCLEN.NCODIENTI = CFGENTI.NCODIENTI
AND NCODICLAS IN (3))11 de março de 2011 às 9:03 pm #98526augustoca
Participante[quote=”Litz”:2j6h4lg3]Olá augustoca
Da forma que vc postou, não funcionou?? Qual o problema em utilizar o exists e o not exists?
Valeu Leonardo Litz.[/quote]
Opa obrigado pelas respostas.
Litz, funcionou sim. Vi só agora sua resposta… mas fiz dessa forma mesmo.
De qualquer forma agradeço.Abraço
11 de março de 2011 às 10:38 pm #98527augustoca
Participante[quote=”Litz”:2tjbrpwm]Olá augustoca
Da forma que vc postou, não funcionou?? Qual o problema em utilizar o exists e o not exists?
Valeu Leonardo Litz.[/quote]
Opa obrigado pelas respostas.
Litz, funcionou sim. Vi só agora sua resposta… mas fiz dessa forma mesmo.
De qualquer forma agradeço.Abraço
-
AutorPosts
- Você deve fazer login para responder a este tópico.