Ver Mensaje Individual
  #3 (permalink)  
Antiguo 07/06/2008, 10:12
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Ahorrar código creando nueva tabla

Elimina los paréntesis finales:
Código:
CREATE VIEW inici AS 
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 (
.
etc
.
UNION (

SELECT camp_revista_referencia, camp_revista_data, camp_revista_foto, camp_revista_titol, camp_revista_text, camp_revista_paginici, camp_revista_seccio
FROM taula_revista
WHERE camp_revista_paginici = 'si'
)
ORDER BY DATA DESC
LIMIT 0 , 25;
O bien, si te da error, déjalos tomando la resultante de la consulta como una tabla y asigándole un alias:
Código:
CREATE VIEW inici AS SELECT * FROM (
(
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 (
.
etc
.
UNION (

SELECT camp_revista_referencia, camp_revista_data, camp_revista_foto, camp_revista_titol, camp_revista_text, camp_revista_paginici, camp_revista_seccio
FROM taula_revista
WHERE camp_revista_paginici = 'si'
)
ORDER BY DATA DESC
LIMIT 0 , 25
)  as Tabla1;
De todos modos te digo que realizar 25 uniones de tablas me parece una falta de optimización exagerada.
Debería haber una forma mejor.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)