Tengo un problema con un buscador de resultado, éste tiene que buscar en dos tablas, ambas relacionadas.
Este problema lo solucioné facilmente con subquerys, pero al subir el script al hosting me percaté que el mysql del servidor es version 4.0.xx, razon el cual no soporta "Subquerys".
Dada ésta situación tengo que hacer ésto mediante php, pero no he podido dar con la solución
Haber si me pueden ayudar, la situacion es la siguiente:
Son dos tablas la de usuario (usuario es unico) y la tabla de experiencia laboral (el usuario puede tener mas de una experiencia laboral).
Tabla usuario:
id ( Lave primaria )
nombre
password
etc...
Tabla Experiencia Laboral:
id_exp ( Lave primaria )
id_usuario` int(5) ( Llave estrangera de tabla usuarios)
nombre_empresa
cargo_empresa
fecha_inicio
fecha_fin
actual_cargo
descripcion_cargo
la idea es tener un join entre ambas tablas, pero que de la tabla experiencia laboral me entregue solo una experiencia laboral, que sea la última, ésto mediante mysql, solo lo pude hacer con subquerys(pero el hostin no lo soportó).
Ya que si en el buscador ingreso el nombre del usuario me va a repetir tantas veces el usuario como experiencias tenga y la idea es que solo me muetre ese usuario con su última experiencia laboral, pero a su vez que tambien busque en la tabla experiencia laboral, es decir tiene que buscar en ambas tablas y traerme el resultado del usuario y su ultima experiencia laboral ya sea que la palabra la encontró en la tabla del usuario o en su experiencia laboral.
Por el momento tengo lo siguente, pero el drama es que no me busca dentro de la experiencia laboral.
Código PHP:
$search_query = 'WHERE (us.nombre_usuario LIKE "%' . $palabra_clave . '%" OR us.apaterno_usuario LIKE "%' . $palabra_clave . '%" OR us.amaterno_usuario LIKE "%' . $palabra_clave . '%") ';
$result_busqueda_usuario = mysql_query('SELECT us.* FROM posters us '
. $search_query .'order by id') or die (mysql_error());
$busqueda_usuario = array();
while($row = mysql_fetch_assoc($result_busqueda_usuario))
{
$busqueda_usuario = $row;
$result_busqueda_exp_laboral = mysql_query('SELECT pel.* FROM prof_exp_laboral pel '
.'WHERE id_usuario = \'' . $busqueda_usuario['id'] . '\' ORDER BY id_exp DESC LIMIT 0,1') or die (mysql_error());
$busqueda_exp_laboral = array();
while($row = mysql_fetch_assoc($result_busqueda_exp_laboral))
{
//aqui muestro el resultado
}
espero haberme entendido bien.
Gracias. y saludos.
zsamer