Convertire un campo di testo in uno numerico | SQL & MySQL

Topic: Pubblico - Composto da 2 Posts di 2 Utenti.

19 Settembre, 2011 18:24 #1
max1850
Utente

max1850
Registrato: Apr, 2011
Posts: 11
Offline

Salve.
Nel db in mysql ho un campo di testo VARCHAR(255) di nome 'prezzo'. Nella visualizzazione a video devono visualizzarsi i dati di questo campo in ordine crescente, quindi i valori devono essere convertiti prima in numerico per poi ordinarli.
Quale funzione sql posso usare per la conversione?

La mia vecchia query in access era la seguente:
"SELECT nome, prezzo FROM libreria ORDER BY CLNG (LEFT (prezzo, instr (prezzo, '.')))"

Grazie dell'aiuto
Max!

21 Settembre, 2011 16:13 #2
fuser
Utente

fuser
Registrato: Aug, 2011
Posts: 86
Offline

Prima di tutto cambia il tipo del campo:

1ALTER TABLE libreria MODIFY prezzo MEDIUMINT DEFAULT 0 NOT NULL;

Poi la tua query sarà così:

1SELECT nome, prezzo FROM libreria ORDER BY prezzo;

Se aggiungi due funzioni per ordinare solo in base alla parte intera non la rendi più veloce, anzi! :)

Condividi su:

Loggati o Registrati per replicare