|
在 MySQL 中平方根函数 SQRT(x) 返回非负数 x 的二次方根。负数没有平方根,返回结果为 NULL。
【实例 1】求 25、120 和 -9 的二次平方根,输入的 SQL 语句和执行结果如下所示。- mysql> SELECT SQRT(25),SQRT(120),SQRT(-9);
- +----------+--------------------+----------+
- | SQRT(25) | SQRT(120) | SQRT(-9) |
- +----------+--------------------+----------+
- | 5 | 10.954451150103322 | NULL |
- +----------+--------------------+----------+
- 1 row in set (0.06 sec)
复制代码
由运行结果可知,5 的平方等于 25,因此 25 的平方根为 5;120 的平方根为 10.954451150103322;而负数没有平方根,因此 -9 返回的结果为 NULL。
也可以使用 SQRT 函数,计算出记录的平方根。
【实例 2】 假设数据表 tb_people 有以下这些数据:
- mysql> SELECT * FROM tb_people;
- +------+------+------------+--------------------+
- | id | name | work_date | daily_typing_pages |
- +------+------+------------+--------------------+
- | 1 | John | 2007-01-24 | 250 |
- | 2 | Ram | 2007-05-27 | 220 |
- | 3 | Jack | 2007-05-06 | 170 |
- | 3 | Jack | 2007-04-06 | 100 |
- | 4 | Jill | 2007-04-06 | 220 |
- | 5 | Zara | 2007-06-06 | 300 |
- | 5 | Zara | 2007-02-06 | 350 |
- +------+------+------------+--------------------+
- 7 rows in set (0.00 sec)
复制代码
根据上面的表格,要计算所有的 dialy_typing_pages 的平方根,输入 SQL 语句执行结果如下:- mysql> SELECT name, SQRT(daily_typing_pages)
- -> FROM tb_people;
- +------+--------------------------+
- | name | SQRT(daily_typing_pages) |
- +------+--------------------------+
- | John | 15.811388 |
- | Ram | 14.832397 |
- | Jack | 13.038405 |
- | Jack | 10.000000 |
- | Jill | 14.832397 |
- | Zara | 17.320508 |
- | Zara | 18.708287 |
- +------+--------------------------+
- 7 rows in set (0.00 sec)
复制代码
|
|