MySQL 如何将Varchar转换为Double
您可以使用CAST()函数将varchar转换为double。该语法如下:
SELECT yourColumnName1,yourColumnName2,......N, CAST(yourColumnName AS DECIMAL(TotalDigit,DigitAfterDecimalPoint)) anyVariableName FROM yourtableName
ORDER BY anyVariableName DESC;
为了理解上述语法,让我们创建一个表。创建表的查询语句如下:
mysql> create table VarcharToDouble
-> (
-> Id int NOT NULL AUTO_INCREMENT,
-> Name varchar(10),
-> Amount varchar(10) ,
-> PRIMARY KEY(Id)
-> );
Query OK, 0 rows affected (0.67 sec)
使用insert命令将一些记录插入该表中。查询语句如下:
mysql> insert into VarcharToDouble(Name,Amount) values('约翰','456.78');
Query OK, 1 row affected (0.14 sec)
mysql> insert into VarcharToDouble(Name,Amount) values('拉里','8465.98');
Query OK, 1 row affected (0.18 sec)
mysql> insert into VarcharToDouble(Name,Amount) values('迈克','9083.45');
Query OK, 1 row affected (0.12 sec)
mysql> insert into VarcharToDouble(Name,Amount) values('山姆','46475.50');
Query OK, 1 row affected (0.19 sec)
mysql> insert into VarcharToDouble(Name,Amount) values('卡罗尔','10003.35');
Query OK, 1 row affected (0.17 sec)
使用select语句从表中显示所有记录。查询语句如下:
mysql> select *from VarcharToDouble;
以下是输出结果:
+----+-------+----------+
| Id | Name | Amount |
+----+-------+----------+
| 1 | 约翰 | 456.78 |
| 2 | 拉里 | 8465.98 |
| 3 | 迈克 | 9083.45 |
| 4 | 山姆 | 46475.50 |
| 5 | 卡罗尔 | 10003.35 |
+----+-------+----------+
5 rows in set (0.00 sec)
以下是使用CAST()将varchar转换为double的查询语句:
mysql> select Id,Name, CAST(Amount AS DECIMAL(10,2)) TotalAmount from VarcharToDouble
-> order by TotalAmount desc;
以下是输出结果:
mysql> select Id,Name, CAST(Amount AS DECIMAL(10,2)) TotalAmount from VarcharToDouble
-> order by TotalAmount desc;
阅读更多:MySQL 教程
极客教程