Revisa tu diseño de la base de datos, no se deben crear tablas que en lo unico que se diferencien sea en el nombre.
Deberias crear mejor algo asi:
bd_galeria:
temas(id_tema, nombre_tema)
fotos(id_foto, id_tema_foto, titulo_foto, codigo_foto, p_clave)
Donde id_tema_foto es una foreign key de temas.id_tema y p_clave contenga las claves separadas por espacios, comas o por cualquier cosa.
Asi te evitas inconsistencias y redundancia de datos.
Despues para consultar todas las fotos que tengan cierta palabra clave, lo haces asi:
Código:
select * from fotos where p_clave like '%palabraclaveabuscar%';
Eso te buscara todas las fotos que contengan la palabraclaveabuscar.
Si quieres todas las fotos que tengan cierta palabra clave y un tema especifico, lo harias asi:
Código:
select * from fotos where p_clave like '%palabraclaveabuscar%' and id_tema = 1;
Eso te devolveria todas las fotos que tengan la palabraclaveabuscar y que sean del tema 1.
Un saludo!