Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

177
Vistas
SQL mostrar solo los registros de los grupos que cumplan una condicion

Teniendo estos registros en una tabla:

ID Marca Version TipoVersion CodEstadoMarca

1   XX   0      PPP        C
2   XX   1      CKL        C
3   XX   2      CV         C
4   XX   3      DDD        C 
5   XX   4      ANU        D
6   JJ   0      PPP        C
7   JJ   1      CV         C
8   JJ   2      CV         C
9   JJ   3      DDD        C
10  NN   0      PPP        C
11  NN   1      KKK        C
12  AA   0      PPP        C
13  AA   1      CV         C

Necesito que me muestre los registros de las Marcas donde se cumpla que no hay un codEstadoMarca 'D' o un TipoVersion 'ANU' y ademas haya en tipoVersion algun 'CV'

Es decir deberia mostrar lo siguiente:

ID  Marca Version TipoVersion CodEstadoMarca

6     JJ   0      PPP        C
7     JJ   1      CV         C
8     JJ   2      CV         C
9     JJ   3      DDD        C
12    AA   0      PPP        C
13    AA   1      CV         C

Estoy usando SQL SERVER de Microsoft.

Una solución que estoy probando es:

SELECT DISTINCT T0.Marca FROM TABLA T0 WHERE CodEstadoMarca = 'D'

Con esto me muestra el codigo de Marca que contiene alguna 'D'

Ahora lo siguiente seria hacer un select de todas las Marcas y solo mostrar las que no aparezcan en el resultado del Select anterior. Pero no se como enlazarlo

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Entiendo que buscas una condición no inclusiva CodEstadoMarca = 'D' OR TipoVersion = 'ANU' y una inclusiva tipoVersion = 'CV', podrías hacer algo así

WHERE Marca NOT IN (SELECT DISTINCT T0.Marca 
                           FROM TABLA T0 
                           WHERE CodEstadoMarca = 'D' OR TipoVersion = 'ANU')
      AND Marca IN (SELECT DISTINCT T0.Marca 
                           FROM TABLA T0 
                           WHERE tipoVersion = 'CV')
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda