0
点赞
收藏
分享

微信扫一扫

MySQL基础学习(五)——单行函数

金牛豆豆 2022-04-29 阅读 49
mysql

单行函数:

  1. 操作数据对象
  2. 接受参数返回一个结果
  3. 只对一行进行变换
  4. 每行返回一个结果
  5. 可以嵌套
  6. 参数可以是一列或一个值

一、数值函数

1、ABS(x):返回x的绝对值

SELECT ABS(-123),ABS(32)
FROM DUAL

2、SIGN(x):返回x的符号

正数返回1,负数返回-1,0返回0

SELECT SIGN(-23),SIGN(43),SIGN(0)
FROM DUAL

3、PI():圆周率的值

SELECT PI()
FROM DUAL

4、CEIL(x)、CEILING(x):向上取整 

不考虑四舍五入

SELECT CEIL(32.32),CEILING(-43.23)
FROM DUAL

 5、FLOOR(x):向上取整

不考虑四舍五入

SELECT FLOOR(32.32),FLOOR(-43.23)
FROM DUAL

6、LEAST(n1,n2.....n):返回列表中的最小值

SELECT LEAST(1,4,3,7,5,9)
FROM DUAL

7、GREATEST(n1,n2.....n):返回列表中的最大值

SELECT GREATEST(1,4,3,7,5,9)
FROM DUAL

8、MOD(x,y):返回x除以y之后的余数

SELECT MOD(12,5)
FROM DUAL

 9、RAND():返回0~1的随机值

SELECT RAND(),RAND()
FROM DUAL

 10、RAND(x):返回0~1的随机值,其中x的值用作种子值,相同的x值会产生相同的随机数

SELECT RAND(10),RAND(10),RAND(-1),RAND(-1)
FROM DUAL

 11、ROUND(x):返回一个对x的值进行四舍五入后,最接近于x的整数

SELECT ROUND(123.456),ROUND(123.556)
FROM DUAL

12、ROUND(x,y):返回一个对x的值进行四舍五入后最接近x的值,并保留到小数点后面Y位

SELECT ROUND(123.456,0),ROUND(123.456,1),ROUND(123.456,2),ROUND(123.456,-2)
FROM DUAL

13、TRUNCATE(x,y):返回数字x截断为y位小数的结果

SELECT TRUNCATE(123.456,0), TRUNCATE(123.456,1)
FROM DUAL

 14、SQRT(x):返回x的平方根。当x的值为负数时,返回NULL

SELECT SQRT(4),SQRT(-4)
FROM DUAL

二、角度和弧度互换函数

1、RADIANS(x):将角度转化为弧度,其中,参数x为角度值

SELECT RADIANS(30),RADIANS(45),RADIANS(60),RADIANS(90)
FROM DUAL

2、DEGREES(x):将弧度转化为角度,其中,参数x为弧度值

SELECT DEGREES(2*pi()),DEGREES(RADIANS(60))
FROM DUAL

三、三角函数

1、SIN(x):返回x的正弦值,其中,参数x为弧度值

SELECT SIN(RADIANS(30))
FROM DUAL


2、ASIN(x):返回x的反正弦值,即获取正弦为x的值。

如果x的值不在-1到1之间,则返回NULL

SELECT DEGREES(ASIN(1))
FROM DUAL


3、COS(x):返回x的余弦值,其中,参数x为弧度值

SELECT COS(RADIANS(30))
FROM DUAL


4、ACOS(x):返回x的反余弦值,即获取余弦为x的值。

 如果x的值不在-1到1之间,则返回NULL

SELECT DEGREES(ACOS(1))
FROM DUAL


5、TAN(x):返回x的正切值,其中,参数x为弧度值

SELECT TAN(RADIANS(45))
FROM DUAL


6、ATAN(x):返回x的反正切值,即返回正切值为x的值

SELECT DEGREES(ATAN(1))
FROM DUAL


7、ATAN2(m,n):返回两个参数的反正切值

SELECT ATAN2(1,2)
FROM DUAL


8、COT(x):返回x的余切值,其中,x为弧度值

SELECT COT(RADIANS(30))
FROM DUAL


 四、指数与对数

1、返回x的y次方

SELECT POW(2,5),POWER(2,4)
FROM DUAL

2、返回e的x次方

其中e是一个常数,2.7182818284590

SELECT EXP(2)
FROM DUAL

3、返回以e为底的x的对数 

当X<=0时,返回的结果为NULL

SELECT LOG(10),LN(2)
FROM DUAL

4、返回以10为底的x的对数

当X<=0时,返回的结果为NULL

SELECT LOG10(2)
FROM DUAL

5、返回以2为底的x的对数

当X<=0时,返回NULL

SELECT LOG2(4)
FROM DUAL

五、进制间的转换

1、返回x的二进制编码

SELECT BIN(10)
FROM DUAL

2、返回x的十六进制编码

SELECT HEX(10)
FROM DUAL

3、返回x的八进制编码

SELECT OCT(10)
FROM DUAL

4、返回f1进制数变成f2进制数

SELECT CONV(10,10,8)
FROM DUAL

六、字符串函数 

举报

相关推荐

0 条评论