Hola fiorella...
La verdad no te entendí muy bien, las relaciones que manejas. Es mas, pensaba que departamento tenía direcciones y no al revés.
Cita: entonces primeramente esta el dpto de la Secretaria de la cultura y de ella descienden 4 direcciones generales y a su vez de esas cuatro direcciones generales estan dos direcciones a parte...
Sin embargo, te voy a responder a tu principal duda que es como mostrar los datos de varias tablas sin estar relacionadas directamente.
según tu esquema
Cita: DIRECCION: id_direccion,nom_direccion.
DEPARTAMENTO: id_dpto,nom_dpto,dir_dpto,descr_dpto,id_direccion.
ARTICULO: id_art,descr_art,medida_articulo,serial_arti.
ACTIVO:id_activo,id_dpto,id_articulo,estatus_art.
como ves, entre activo y dirección no hay una relación directa, pero ambas tienen relación con departamento.
Si por ejemplo quieres mostrar nom_direccion y estatus_art puedes hacerlo de la siguiente forma:
select direccion.nom_direccion, activo.estatus_art from direccion inner join activos on activos.id_dpto = direccion.id_dpto;
Que hace inner join? Une las tablas teniendo en cuenta la integridad referencial que existe entre ellas.
tanto dirección como activos comparten un campo id_dpto y se valen de eso para mostrar sus propios campos.
Espero haberte ayudado.