Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/09/2008, 17:10
Avatar de starmark
starmark
 
Fecha de Ingreso: junio-2008
Ubicación: Venezuela
Mensajes: 64
Antigüedad: 15 años, 10 meses
Puntos: 0
AYUDA!!!POR FAVOR CONSULTA MULTITABLA SQL HACIENDO USO DE LIKE ....Ayudenme

Bueno ante todo un saludo a los visitantes de este tema. . Tengo en mi web (una tienda virtual) un buscador el cual realizara búsquedas en una db donde almaceno 3 tablas, art_deportivos, art.musicales, otros ..

En el buscador como dije ofrezco opciones de buscar en las distintas tablas y una opción que buscara en las 3 tablas (AQUI EL PROBLEMA) tengo el siguiente select.. .
<select name="busc">
<option>TODOS</option>
<option>MUSICALES</option>
<option>DEPORTIVOS</option>
<option>OTROS</option>
</select>

Cuando el usuario desea buscar en las tablas art_deportivos, art.musicales u en la tabla otros .. NO TENGO NIGUN PROBLEMA

El problema es cuando el usuario marca en el select la opción todos, que debe buscar en las 3 tablas ..

No tengo bien claro como debe ser esta consulta ..

Algo que debo decir es que en las 3 tablas tengo los cuatro campos repetidos no se q tenga esto que ver, lo que pasa es que como es un inventario, entonces no veo otra forma de almacenarlos en la db, aquí os pongo la estructura de mis tablas

CREATE TABLE `deportivos` (
`idproducto` varchar(30) NOT NULL,
`descripcion` text NOT NULL,
`cantidad` int(20) default NULL,
`precio` float NOT NULL,
PRIMARY KEY (`idproducto`),
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

CREATE TABLE `musicales` (
`idproducto` varchar(30) NOT NULL,
`descripcion` text NOT NULL,
`cantidad` int(20) default NULL,
`precio` float NOT NULL,
PRIMARY KEY (`idproducto`),
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

CREATE TABLE `otros` (
`idproducto` varchar(30) NOT NULL,
`descripcion` text NOT NULL,
`cantidad` int(20) default NULL,
`precio` float NOT NULL,
PRIMARY KEY (`idproducto`),
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

E intentado varias querys que me dan como 70000 mil resultados :: . Por favor ayúdenme en esto;

Si no me explique bien diganme para explicarme mejor .. Gracias