Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/05/2008, 17:03
apañero
 
Fecha de Ingreso: abril-2004
Mensajes: 310
Antigüedad: 20 años
Puntos: 0
Consulta que borra de los ceros de delante de un campo ZEROFILL

Hola buenas, estoy usando una consulta MYSQL que me borra los ceros de delante de todos los valores de un campo ZEROFILL. Antes en mysql4 me funcionaba, pero ahora en mysql5 no. La consulta es la siguiente:

$sql = "(select * FROM productos join cosas ON productos.PID=cosas.PID WHERE cosas.E_TIPO='$scid' AND productos.PSTOCK<>0 ORDER BY cosas." . $sort . " " . $type ." LIMIT ". $inicial ."," .$cantreg. ") UNION (select * FROM productos join cosas ON productos.PID=cosas.PID WHERE cosas.E_TIPO='$scid' AND productos.PSTOCK=0 ORDER BY cosas." . $sort . " " . $type ." LIMIT ". $inicial ."," .$cantreg. ")";

La fila/campo con atributos ZEROFILL es una fila/campo de la tabla productos llamada PCOD tal que:
Campo Tipo Atributos Nulo Predeterminado
PCOD int(4) UNSIGNED ZEROFILL No 0000

Con la consulta anterior, me devuelve los valores del campo ZEROFILL sin los ceros de delante, mientras que si quito el UNION + 2ª consulta sí me devuelve bien los valores. El UNION creo que es el causante.

¿Alguna solución para que no me quite los ceros y la consulta sea la misma?
La idea de la consulta es que me coja todos los productos de el tipo determinado que tengan Stock mayor de 0 (productos.PSTOCK<>0) y que justo después me añada los productos de stock cero (productos.PSTOCK=0) para que así luego los tenga ordenados de esa forma en el array de recogida.

Graciasss!