Ver Mensaje Individual
  #12 (permalink)  
Antiguo 15/10/2006, 22:59
latin.developer
 
Fecha de Ingreso: mayo-2005
Mensajes: 55
Antigüedad: 18 años, 11 meses
Puntos: 1
Hola. He resuelto este asunto de la siguiente forma: Como no logré ordenar el UNION y nunca logré que el UNION no permitiera registros duplicados, resolví hacer una TABLA TEMPORAL y vacias el QUERY allí, entonces, esa TABLA es la que ordenaría. A continuación todo el código y espero que le sirva de ayuda en un futuro:

$crear_tabla = " CREATE TEMPORARY TABLE `produccionTMP` (
`IDproduccion` mediumint(6) unsigned NOT NULL default '0',
`titulo` varchar(150) NOT NULL default '',
`lugar` varchar(150) NOT NULL default '',
`fecha` varchar(50) NOT NULL default '',
`deposito_legal` varchar(50) NOT NULL default '',
`fuente` varchar(255) NOT NULL default '',
`informacion` longtext,
`IDcategoria` tinyint(3) unsigned NOT NULL default '0',
`id_admin` int(11) default NULL,
`isonido` varchar(255) default NULL,
`productorart` varchar(255) default NULL,
`contacto` varchar(255) default NULL,
`genero` varchar(255) default NULL,
PRIMARY KEY (`IDproduccion`),
UNIQUE KEY `IDproduccion` (`IDproduccion`),
KEY `IDproduccion_2` (`IDproduccion`)
)";
mysql_query($crear_tabla);


$sql_produccion="INSERT INTO produccionTMP
SELECT p.*
FROM produccion p
WHERE p.titulo like '%$p_search_g%' OR p.informacion like '%$p_search_g%'

UNION
SELECT p.*
FROM produccion p, interprete i, artista a
WHERE i.IDproduccion=p.IDproduccion AND a.IDartista=i.IDartista AND
a.Nombre like '%$p_search_g%'

UNION
SELECT p.*
FROM produccion p, producida pda, productor pr
WHERE (pda.IDproduccion=p.IDproduccion AND pda.IDproductor=pr.IDproductor) AND
(pr.productor like '%$p_search_g%')

UNION
SELECT p.*
FROM produccion p, compuesta cta, compositor c
WHERE (cta.IDproduccion=p.IDproduccion AND cta.IDcompositor=c.IDcompositor) AND
(c.Apellido like '%$p_search_g%' OR c.Nombre like '%$p_search_g%')";

mysql_query($sql_produccion);

$sql = "
SELECT *
FROM produccionTMP
ORDER BY IDproduccion";

Muchas gracias por sus constantes ayudas. (en especial a SOLECOZA)