使用 MySQL 选择和划分列中的数字并以整数形式显示小数结果

mysqlmysqli database更新于 2023/11/27 7:53:00

首先我们创建一个表 −

mysql> create table DemoTable
   -> (
   -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> Number int
   -> );
Query OK, 0 rows affected (0.50 sec)

使用 insert 命令在表中插入一些记录 −

mysql> insert into DemoTable(Number) values(10);
Query OK, 1 row affected (0.14 sec)

mysql> insert into DemoTable(Number) values(20);
Query OK, 1 row affected (0.12 sec)

mysql> insert into DemoTable(Number) values(30);
Query OK, 1 row affected (0.20 sec)

mysql> insert into DemoTable(Number) values(40);
Query OK, 1 row affected (0.14 sec)

使用 select 语句显示表中的所有记录 −

mysql> select *from DemoTable;

输出

这将产生以下输出 −

+----+--------+
| Id | Number |
+----+--------+
|  1 | 10     |
|  2 | 20     |
|  3 | 30     |
|  4 | 40     |
+----+--------+
4 rows in set (0.00 sec)

这是使用 MySQL 选择一个整数并进行除法的查询 −

mysql> select Id,Number,(Number/2) AS DivideBy2 from DemoTable;

输出

这将产生以下输出。除法结果为十进制值 −

+----+--------+-----------+
| Id | Number | DivideBy2 |
+----+--------+-----------+
|  1 |     10 |    5.0000 |
|  2 |     20 |   10.0000 |
|  3 |     30 |   15.0000 |
|  4 |     40 |   20.0000 |
+----+--------+-----------+
4 rows in set (0.00 sec)

如果您不想要小数值,请使用以下查询并转换为整数 −

mysql> select Id,Number,cast((Number/2) AS UNSIGNED) AS DivideBy2 from DemoTable;

Ouptut

这将产生以下输出 −

+----+--------+-----------+
| Id | Number | DivideBy2 |
+----+--------+-----------+
|  1 | 10     | 5         |
|  2 | 20     | 10        |
|  3 | 30     | 15        |
|  4 | 40     | 20        |
+----+--------+-----------+
4 rows in set (0.00 sec)

相关文章