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

Usa una subconsulta junto con IN para listar todos los nombres de modelos con un precio de etiqueta mayor a $30000

Necesito ayuda con esta pregunta, he intentado varias variaciones de este código y obtengo el error de que no estoy obteniendo todos los ids de modelo (que no pregunta, así que asumo que es un problema con mi join) o un error general de que el código está mal.

Seleccionar Nombre del modelo from Modelo Interno join Car ON car.id de modelo=model.id de modelo 
Donde precio de etiqueta IN (Seleccionar precio de etiqueta from car donde precio de etiqueta>30000);

4 respuestas

Steven Parker
Steven Parker
244 163 puntos

Casi lo tienes en tu tercer intento. El truco es hacer que la subconsulta seleccione la columna que ambas tablas tienen en común. Esta es también la misma columna que la primera cláusula WHERE está comparando.

Seleccionar Nombre del modelo from Modelo Donde IDModelo IN (Seleccionar IDModelo from car donde precio de etiqueta>30000);
--                                                   ^^^^^^^

hey Mark ¿puedes explicar un poco más por favor? no entiendo por qué tenemos que hacer una subconsulta en lugar de simplemente dar la condición 'where stickerprice>30000'

Ahora estoy obteniendo este error:

He intentado los siguientes tres códigos:

Mark Sebeck
Mark Sebeck
38,347 Puntos

Hola Zaal. Un par de cosas aquí. Primero, no necesitas un inner join. La pregunta pide usar una subconsulta, así que eso nos deja con:

Seleccionar Nombre del modelo from Modelo
Donde precio de etiqueta IN (Seleccionar precio de etiqueta from car donde precio de etiqueta>30000);

entonces en la subconsulta estás seleccionando el precio de etiqueta, ¿es eso lo que queremos? Queremos modelos con precio de etiqueta mayor a 30000. Entonces cambia eso para seleccionar modelID y comparar con modelID fuera de la subconsulta y debería funcionar

¡Buena suerte y sigue intentando!