AJUDA COM SELECT MESMA TABELA - FILTROS AGRUPADOS
Olá Pessoal,
Ajuda com Select...
Tenho a Tabela abaixo:
Coluna 1: Nome / nome
Coluna 2: idMaster / Identificação Master
Coluna 3: tipoCad / Dado Compartilhado S ou Não
|Nome |IdMaster |TipoCad|
---------------------------------------------------------
linha1 |Maria Joaquina |1 | S |
linha2 |Jose Paulo |1 | N |
linha3 |Pedro Paulo |117 | N |
Preciso selecionar todos os que são comparilhados TipoCad = [Ô]S[Ô] do Master [Ô]1[Ô] + Todos do Master [Ô]117[Ô]
que por padrão sempre tem TipoCad=[ô]N[ô]...
Então já assim :
Citação:SELECT Pai.nome, Pai.TipoCad
FROM tbCad AS Pai, tbCad AS Fil
WHERE (Pai.idMas=117 or Fil.idMas=1) and (Fil.TipoCad=[ô]S[ô] and Pai.TipoCad=[ô]N[ô])
Mais hora vem um só master ou hora vem zero.
Agradeço qualquer ajuda
JGD
Acredito que a melhor solução para o seu problema é o UNION.
Ex.:
SELECT NOME, TIPOCAD FROM TABCAD WHERE TIPOCAD = [ô]S[ô] AND IDMASTER = 1
UNION
SELECT NOME, TIPOCAD FROM TABCAD WHERE TIPOCAD = [ô]N[ô] AND IDMASTER = 117
Ex.:
SELECT NOME, TIPOCAD FROM TABCAD WHERE TIPOCAD = [ô]S[ô] AND IDMASTER = 1
UNION
SELECT NOME, TIPOCAD FROM TABCAD WHERE TIPOCAD = [ô]N[ô] AND IDMASTER = 117
Citação:OPTIMUS escreveu:
Acredito que a melhor solução para o seu problema é o UNION.
Ex.:
SELECT NOME, TIPOCAD FROM TABCAD WHERE TIPOCAD = [ô]S[ô] AND IDMASTER = 1
UNION
SELECT NOME, TIPOCAD FROM TABCAD WHERE TIPOCAD = [ô]N[ô] AND IDMASTER = 117
Ou...
SELECT NOME, TIPOCAD FROM TABCAD WHERE (TIPOCAD = [ô]S[ô] AND IDMASTER = 1) or (TIPOCAD = [ô]N[ô] AND IDMASTER = 117)
é IMPORTANTÃSSIMO que a tabela esteja indexada para que a pesquisa seja agilizada.
Tópico encerrado , respostas não são mais permitidas