no entiendo tu ultima pregunta...
con respecto, al problema de tu consulta es obvio...
este es un problema de sintaxis (o me estaré equivocando) pues debe ir una lista válida y no rota... osea, si son vacíos que sean
NULL o bien, no los incluyas...
Código:
(1,2,3) o así (NULL,2,3,NULL)
espero entiendas esa parte, como creas tu variable $caracte ???
--
puedes explicar que quieres hacer con tus resultados ???
dibujarlos en una tabla, cierto ??
pero, como... eh?