详解MySQL中的SQRT函数的使用方法

详解MySQL中的SQRT函数的使用方法,第1张

MySQL的SQRT函数是用来计算出任何数量的平方根。可以使用SELECT语句找出方检定根的任意数如下:

mysql>

select

SQRT(16)

+----------+

|

SQRT(16)

|

+----------+

|

4.000000

|

+----------+

1

row

in

set

(0.00

sec)

所看到的浮点值,因为内部MySQL将处理浮点数据类型的平方根。

可以使用SQRT函数,计算出记录的平方根。了解SQRT函数更详细用法,考虑EMPLOYEE_TBL的表具有以下记录:

mysql>

SELECT

*

FROM

employee_tbl

+------+------+------------+--------------------+

|

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的平方根,然后可以通过使用下面的命令:

mysql>

SELECT

name,

SQRT(daily_typing_pages)

->

FROM

employee_tbl

+------+--------------------------+

|

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)

-- 导出  函数 xxx.PRO_GETNUM 结构

DELIMITER //

CREATE DEFINER=`xxx`@`%` FUNCTION `PRO_GETNUM`(`param1` INT) RETURNS varchar(5000) CHARSET utf8mb4

BEGIN

declare reInt int(11) default 0

declare reStr varchar(5000) default ''

declare i int(11) default 1

while reInt<=param1 do

if(i!=1) then

set reStr = concat(reStr,reInt,',')

end if

set reInt =  i*i

/*select reInt*/

set i = i+1

end while

if length(reStr)>1 then

set reStr = substr(reStr,1,length(reStr)-1)/*去掉最后一个逗号*/

end if

return reStr

END//

DELIMITER 

mysql有丰富的时间函数:

ADDTIME (date2 ,time_interval ) //将time_interval加到date2

CONVERT_TZ (datetime2 ,fromTZ ,toTZ ) //转换时区

CURRENT_DATE ( ) //当前日期

CURRENT_TIME ( ) //当前时间

CURRENT_TIMESTAMP ( ) //当前时间戳

DATE (datetime ) //返回datetime的日期部分

DATE_ADD (date2 , INTERVAL d_value d_type ) //在date2中加上日期或时间

DATE_FORMAT (datetime ,FormatCodes ) //使用formatcodes格式显示datetime

DATE_SUB (date2 , INTERVAL d_value d_type ) //在date2上减去一个时间

DATEDIFF (date1 ,date2 ) //两个日期差

DAY (date ) //返回日期的天

DAYNAME (date ) //英文星期

DAYOFWEEK (date ) //星期(1-7) ,1为星期天

DAYOFYEAR (date ) //一年中的第几天

EXTRACT (interval_name FROM date ) //从date中提取日期的指定部分

MAKEDATE (year ,day ) //给出年及年中的第几天,生成日期串

MAKETIME (hour ,minute ,second ) //生成时间串

MONTHNAME (date ) //英文月份名

NOW ( ) //当前时间

SEC_TO_TIME (seconds ) //秒数转成时间

STR_TO_DATE (string ,format ) //字串转成时间,以format格式显示

TIMEDIFF (datetime1 ,datetime2 ) //两个时间差

TIME_TO_SEC (time ) //时间转秒数]

WEEK (date_time [,start_of_week ]) //第几周

YEAR (datetime ) //年份

DAYOFMONTH(datetime) //月的第几天

HOUR(datetime) //小时

LAST_DAY(date) //date的月的最后日期

MICROSECOND(datetime) //微秒

MONTH(datetime) //月

MINUTE(datetime) //分返回符号,正负或0

SQRT(number2) //开平方

以上函数仅供参考,详细的可以查看雷雪松的博客。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/8641611.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-19
下一篇2023-04-19

发表评论

登录后才能评论

评论列表(0条)

    保存