supongo que las Variables las Cogeras con POST o GET si vienen de un formulario..
voy a mejorarte el query :
Código PHP:
$init = 'select t.clave,p.num_col,nombre,apellido1,apellido2,especialidad from personal as p, especialidad as t ' ;
$where = 'where p.apellido1 like "%' . $apellido1 . '%" and p.nombre like "%' . $nombre . '%" and p.apellido2 like "%' . $apellido2 . '%" and p.num_col like "%' . $num_col . '%" and p.num_col=t.num_col';
$qry = $init . $where ;
Por cierto, especialidad aparecia separada ( espec ialidad ), lo he juntado, pero no creo que sea eso.
Igual, la mejora que te e exo no te solventa el problema, pero te ayuda a encontrarlo ^_^