将浮点值拆分为 MySQL 表的两列?
mysqlmysqli database
要将浮点值拆分为两列,第一列将具有小数点前的值。第二列将具有小数点后的值。为此,您可以将 SUBSTRING_INDEX() 与 CAST() 一起使用。让我们首先创建一个表 −
mysql> create table DemoTable1951 ( Value1 varchar(20) ); Query OK, 0 rows affected (0.00 sec)
使用 insert 命令在表中插入一些记录 −
mysql> insert into DemoTable1951 values('100.50'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1951 values('70.90'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1951 values('1000.55'); Query OK, 1 row affected (0.00 sec)
使用 select 语句显示表中的所有记录 −
mysql> select * from DemoTable1951;
这将产生以下输出 −
+---------+ | Value1 | +---------+ | 100.50 | | 70.90 | | 1000.55 | +---------+ 3 rows in set (0.00 sec)
以下是将浮点值拆分为两列的查询:
mysql> select cast(substring_index(Value1, '.', 1) as unsigned) as FirstValue, cast(substring_index(Value1, '.', -1) as unsigned) as SecondValue from DemoTable1951;
这将产生以下输出 −
+------------+-------------+ | FirstValue | SecondValue | +------------+-------------+ | 100 | 50 | | 70 | 90 | | 1000 | 55 | +------------+-------------+ 3 rows in set (0.00 sec)