Pequeña ayuda consulta SQL

A

Bueno os quiero pedir ayuda ya que tengo SQL un poco oxidado, asi que cualquier informacion es bien recibida. Supongo que la solucion estara por internet pero no se con que nombre buscar...

Pongo un ejemplo de lo que quiero hacer:

Tengo 3 tablas:

Coches
Tipo_C
Características

-------------------
Coches
-------------------

id -> id del coche

Ciudad -> Ciudad del concesionario

-------------------
Tipo_C
-------------------

id_C -> id del Tipo de caracteristica

Nombre -> Nombre del tipo de caracteristica

-------------------
Caracteristicas
-------------------

c_id -> id caracteristica

id -> id del coche

id_C -> id del Tipo de caracteristica

Valor -> Valor de la caracteristica

Un ejemplo con datos seria

Coches
-------------------
1,Madrid
2,Madrid

Tipo_C
-------------------
1,Color
2,Caballos
3,Faros

Caracteristicas
-------------------
1,1,1,Rojo
2,2,1,Azul
3,1,2,110
4,2,3,Xenon

Como veis no todas las caracteristicas aparecen en todos los coches. Lo que quiero es poder listar todos los coches de Madrid junto con sus caracteristicas las tengan o no, ejemplo:

id_coche, Ciudad, Color , Caballos, Faros
1 , Madrid, Rojo , 110, NULL
2, Madrid, Azul, NULL, Xenon

Bueno lo dicho, cualquier información es bien recibida

MrTurbo

Prueba con:

SELECT * FROM Coches c
LEFT JOIN Caracteristicas ca ON c.id = ca.id
LEFT JOIN Tipo_C t ON t.id_C = ca.id_C
WHERE Ciudad LIKE 'Madrid'

Aunque esa estructura de tablas es un poco rara

1 respuesta
A

#2 Gracias tio voy a probar y a jugar un poco con la consulta. El caso es que me han pedido en el curro que me encargue y hace bastante que no tocaba bases de datos y bueno la estructura se encarga otro por lo que tengo que ajustarme a eso

Usuarios habituales

  • Aspects0
  • MrTurbo