A mí esto me funciona:
Código MySQL:
Ver original+-------------+-----------------+-----------------+
| idconcierto | nombreConcierto | codigo_director |
+-------------+-----------------+-----------------+
| 1 | Bach | 1 |
| 2 | Beethoven | 2 |
| 3 | Mozart | 1 |
| 4 | Bartok | 3 |
+-------------+-----------------+-----------------+
+----+--------+
| id | codigo |
+----+--------+
| 1 | 1 |
| 2 | 2 |
+----+--------+
+----+--------+
| id | codigo |
+----+--------+
| 1 | 3 |
| 2 | 4 |
| 3 | 1 |
+----+--------+
+-----------------+
| codigo_director |
+-----------------+
| 1 |
| 1 |
+-----------------+
Otra cosa es que:
- Para que codigo_director no tenga repetidos en la consulta habría que añadir un GROUP BY o un DISTINCT
- Se supone que existe una tabla de directores
- Las tablas aula_clasica y aula_teatro parecen tablas de relación varios a varios (y no tienen mucho sentido si no hay más campos que los que yo he puesto)
- Es un error de diseño, seguramente grave, llamar codigo al campo que contiene el código de director en las tablas aula_clasica y aula_teatro
Pero funcionar, funciona.