Mysql: sacar en de una consulta un tipo VARCHAR como INT

Iniciado por nyarko32, 10 Octubre 2006, 22:16 PM

0 Miembros y 1 Visitante están viendo este tema.

nyarko32

tengo un campo en la bd que es de tipo VARCHAR, pero quiero ordenarlo como un INT entoces al hacer el ORDER BY me ordena como una cadena. Hay alguna forma de transformarlo al sacarlo de la bd?

trabajo con PHP por si hay alguna fucnion que me sirva.

LA consulta en cuestion es la siguiente:

SELECT *
FROM t_articulo
WHERE id_tienda=$id ORDER BY precio ASC

precio es VARCHAR



-:YrY:-

intenta con la funcion mysql_fetch_array, esto hace que los resultados de la consulta vayan a un arreglo, luego, puedes ir copiando todos los campos a otro arreglo, cambiando el tipo de campo, con setttype($variable, tipo) y luego deberás de hacer un script de orden que más te agrade y con eso se verá como quieres...

pd: Precio en VARCHAR?
Google está en Internet?
o la Internet está en Google?

memosky

tienes varias formas de sacarlos por ejemplo

while($result = mysql_fetch_array($var:que tiens)){
echo $result['id']."<br>";
}

otra forma seria

while(list($id)=mysql_fetch_array($var:que tienes)){
echo $id."<br>";
}

siguiente

while($result = mysql_fetch_object){
   echo $result->id."<br>";
}

bueno cualquiera de las tres te funciona igual generalmente yo ocupo la primera siempre y cuando trabaje en html sino ocupo la segunda para trabajar los resultados en xml para sacar los datos en flash esooo.

Ertai

Prueba esto:


SELECT CAST(precio as int) AS precio_change FROM tabla ORDER BY precio_change


Recuerda que ya existe un foro de PHP  :D

http://foro.elhacker.net/index.php/board,68.0.html

Saludos!!
Si la felicidad se comprara, entonces el dinero sería noble.


void rotar_by_ref(int& a, int& b) {
   /* Quien dijo que no se podia sin una variable temporal? */
   *a = *a ^ *b;
   *b = *a ^ *b;
   *a = *a ^ *b;
}