Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/06/2008, 02:06
fran321
 
Fecha de Ingreso: octubre-2007
Mensajes: 57
Antigüedad: 16 años, 6 meses
Puntos: 0
Ahorrar código creando nueva tabla

Hola. Mirad, tengo dentro del código PHP una consulta, que no es excesivamente complicada, pero es un chorizo. He oido que en estos casos es conveniente crear la consulta en la misma base de datos y así el SELECT en PHP se reduce a una simple línea. En el código el select es este:

Código PHP:
$query_listados "
    (
    SELECT camp_secretaria_referencia as referencia, camp_secretaria_data as data, camp_secretaria_foto as foto, 
    camp_secretaria_titol as titol, camp_secretaria_text as text, camp_secretaria_paginici as paginici, 
    camp_secretaria_seccio as seccio 
    FROM taula_secretaria 
    WHERE camp_secretaria_paginici ='si'
    )
    UNION 
    (
    SELECT camp_centre_referencia, camp_centre_data, camp_centre_foto, camp_centre_titol, 
    camp_centre_text, camp_centre_paginici, camp_centre_seccio 
    FROM taula_centre 
    WHERE camp_centre_paginici ='si'
    )
    UNION 
    .
    .
    etc hasta 25 tablas en total (consulta probada en MySQL y funciona).
    Devuelve los registros de todas las tablas que cumplen una condición
    y las ordena por fecha descendiente. Asigna alias a los campos.
    .
    .
    ORDER BY data DESC 
    LIMIT 0 , 25
    "

Sólo este código ocupa 180 líneas. Pero no es sólo por eso, sino porque existe otra consulta diferente y porque las dos se utilizan en distintos sitios de diversas páginas.

¿Cómo crear la tabla en la BB.DD. para después hacer referencia a ella en el código? Probablemente no sea nada difícil, pero no lo he hecho nunca y no sé ni por donde empezar. Gracias.