List:General Discussion« Previous MessageNext Message »
From:Steve Werby Date:April 20 2001 7:44pm
Subject:Re: Convert varchar to number field
View as plain text  
"Martin E. Koss" <mek@stripped> wrote:
> I started a table with a varchar filed of 11 characters for a column that
> would hold data such as 0.27; 11; 0.6; 1; 5; 7.5; 11.2; etc
> I wasn't sure if a 'number' field would work. Now I want to list the
> in this column and they do not list numerically, for example: if we had
> 0.27; 0.6; 1; 5; 7.5; 11; then 11 would come before 5 and 7.5
> (alphanumerically).
> What I need is them to list numerically, so they would list like:
> 0.27
> 0.6
> 1
> 5
> 7.5
> 11
> 11.2
> Any advice on what to change the field type to or how to convert it at the
> time of querying via PHP would be great. Thanks.

Use an ALTER TABLE statement.  Something like the following:

ALTER TABLE table_name MODIFY field_name DECIMAL(4,1) UNSIGNED

Make sure you choose a numeric type that is appropriate.  See the online
manual for options.  If you're worried you might ruin your data with this
conversion first create a copy of the table and experiment on it instead.

CREATE TABLE my_copy SELECT * FROM original_table

Note that it won't copy the indexes, but it will create a copy of the table.

Steve Werby
President, Befriend Internet Services LLC

Convert varchar to number fieldMartin E. Koss20 Apr
  • Re: Convert varchar to number fieldSteve Werby20 Apr
  • Re: Convert varchar to number fieldGerald Clark23 Apr