Bienvenido a la Comunidad de Treehouse

¿Quieres colaborar en errores de código? ¿Tienes errores que necesitan comentarios? ¿Buscas un par de ojos adicionales en tu último proyecto? aquí.

¿Buscas aprender algo nuevo?

Treehouse ofrece una prueba gratuita de siete días para estudiantes nuevos. Obtén acceso a miles de horas de contenido y únete a miles de

Inicia tu prueba gratuita

Bases de Datos Consultar Bases de Datos Relacionales Subconsultas Subconsultas

¿Resultados Imposibles? "La subconsulta no devolvió todos los CustomerIDs para personas que se identifican como mujeres (F)."

Contenido de la pregunta:

En una base de datos de automóviles hay una tabla de Ventas con columnas, SaleID, CarID, CustomerID, LocationID, SalesRepID, SaleAmount y SaleDate y una tabla de Clientes con columnas, CustomerID, FirstName, LastName, Gender y SSN.

Utiliza una subconsulta como tabla derivada para mostrar todas las ventas a clientes mujeres ('F'). Selecciona todas las columnas de la tabla de Ventas únicamente.


Mi código:

SELECT * FROM Sale AS s
INNER JOIN (
    SELECT Gender FROM Customer WHERE Gender = 'F') AS c
ON c.CustomerID = s.CustomerID

Respuesta:

Lástima: La subconsulta no devolvió todos los CustomerID para personas que se identifican como mujer (F).


Pregunta:

¿Dónde salió mal? NOTA: También intenté ingresar los Sale campos individualmente para evitar la duplicación normal de campos que se obtiene con una unión. Consecuencia: exactamente el mismo resultado.

1 Respuesta

Dado que está uniendo CustomerID, querrá seleccionar CustomerID en lugar de Gender en su subconsulta.

SELECT * FROM Sale AS s
INNER JOIN (
    SELECT CustomerID FROM Customer WHERE Gender = 'F') AS c
ON c.CustomerID = s.CustomerID

¡Gracias! ¡Eso fue perfecto!