暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

人大金仓 KingbaseES与MySQL的兼容性说明(4)

数据猿 2023-06-29
2642

无区别的函数 

表 4 无区别的函数 

序号

MySQL函数名

KingbaseES函数名

功能简要说明

数值函数

1

ABS(X)

ABS(n)

绝对值

2

ACOS(X)

acos(n)

反余弦

3

ASIN(X)

asin(n)

反正弦

4

ATAN(X)

atan(n)

反正切

5

ATAN2(Y,X)

atan2(n1, n2)

返回两个变量的反正切

6

CEIL(X), CEILING(X)

ceil(n), ceiling(n)

返回大于或等于 n 的最小整数

7

COS(X)

cos(n)

返回余弦

8

COT(X)

cot(n)

返回余切

9

DIV(X)

div(n)

整除

10

DEGREES(X)

degrees(dp)

把弧度转化为角度

11

EXP(X)

exp(n)

返回自然常数 e 指定数值的次方

12

FLOOR(X)

floor(n)

返回等于或小于 n 的最大整数

13

LN(X)

ln(n)

返回参数的自然对数

14

LOG(X), LOG(B,X)

log(n) log(n2 numeric, n1 numeric)

返回指定数字,指定底数的对数

15

LOG10(X)

log10(n)

返回指定数字以10为底的对数

16

MOD(N,M)

mod(y,x)

取余数

17

PI()

pi()

返回π值

18

POW(X,Y), POWER(X,Y)

power(a, b)

计算a的b次幂并返回结果

19

RADIANS(X)

radians(dp)

把角度 dp 转为弧度。

20

RAND([N])

rand([seed]), random()

生成范围 0.0 <= x < 1.0 中的随机值

21

ROUND(X,D)

round(v numeric, s int)

将数字四舍五入到指定的小数位数

21

SIGN(X)

sign(n)

返回指定数字的符号

23

SIN(X)

sin(n)

正弦值

24

SQRT(X)

sqrt(n)

返回数字的平方根

25

TAN(X)

tan(n)

正切值

字符函数

1

BIT_LENGTH(str)

bit_length(string)

返回字符串位长度

2

CHAR_LENGTH(str), CHARACTER_LENGTH(str)

char_length(string), character_length(str)

返回字符串的字符数

3

CONCAT(str1,str2,...)

concat(str ”any” [, str ”any” [, ...] ])

拼接多个字符串

4

CONCAT_WS(separator,str1,str2,...)

concat_ws(sep text,str ” any” [,str ” any” [, ...]])

通过指定分隔符来拼接多个字符串

5

FIND_IN_SET(str,strlist)

find_in_set(str,strlist)

返回第二个参数中第一个参数的索引(位置)

6

FROM_BASE64(str)

from_base64(string)

解码Base64编码的字符串, 并以二进制字符串的形式返回结果

7

LCASE(str)

lcase(string)

将字符串转为小写

8

LOCATE(substr,str), LOCATE(substr,str,pos)

locate(substr, str), locate(substr, str, pos)

返回子字符串在字符串中第一次出现的位置索引, 位置计数的起始值为 1。

7

LOWER(str)

lower(string)

将字符串转为小写

8

LPAD(str,len,padstr)

lpad(string text,length int [, fill text])

在字符串左侧填充指定的字符串,使其达到指定的长度

9

MID(str,pos,len)

mid(str, pos, count)

返回一个字符串指定位置指定长度的子串

10

OCTET_LENGTH(str)

octet_length(string)

返回字符串以字节为单位的长度

11

POSITION(substr IN str)

position(substring in string)

返回指定子串在指定字符串第一次出现的位置

12

REGEXP_LIKE(expr, pat[, match_type])

regexp_like( source, pattern [,match_param])

判断一个字符串是否和一个正则表达式匹配

13

REGEXP_REPLACE(expr, pat, repl [, pos[, occurrence[, match_type ]]])

regexp_replace (source, pattern, replacement [, position [, occurrence [, flag ]]])

将匹配正则表达式模式的子串替换为新文本

14

REPEAT(str,count)

repeat(string text, number int)

指定字符串重复指定次数并返回新串

15

REPLACE(str,from_str,to_str)

replace(string text, from text, to text)

将字符串中出现的所有子串替换为新的子串

16

RIGHT(str,len)

right(string,length)

返回字符串最右边指定数量的字符子串

17

RPAD(str,len,padstr)

rpad(string text, length int [, fill text])

在字符串右侧填充指定的子串,使其达到指的长度

18

SUBSTRING(str,pos), SUBSTRING(str FROM pos), SUBSTRING(str,pos,len), SUBSTRING(str FROM pos FOR len)

substring(string [from int] [for int])

从一个字符串中返回指定位置指定长度的子串

19

SUBSTRING_INDEX(str,delim,count)

substring_index(str,delimiter,count)

返回字符串中指定间隔符出现在指定次数之前的子串

20

TO_BASE64(str)

to_base64(string)

返回字符串以base-64形式编码的字符串表示

21

TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str), TRIM([remstr FROM] str)

trim([ { { LEADING | TRAILING | BOTH } [ trim_character ] | trim_character } FROM ] trim_source )

删除字符串前导和尾随的指定字符或者空格

22

UCASE(str)

ucase(string)

将字符串转为大写

23

UPPER(str)

upper(string)

将支付串转换为大写

时间日期函数

1

ADDDATE(date,INTERVAL expr unit), ADDDATE(expr,days)

adddate(n1,n2)

指定日期/时间加上指定的时间间隔

2

ADDTIME(expr1,expr2)

addtime(n1,n2)

指定时间上加上指定的时间间隔

3

CONVERT_TZ(dt,from_tz,to_tz)

convert_tz(dt,from_tz,to_tz)

将一个时区的时候转换为另一个时区的时间

4

CURDATE()

curdate()

返回当前系统的日期

5

CURRENT_DATE()

current_date()

返回当前系统的日期

6

CURTIME()

curtime()

返回当前系统的时间

7

DATE_ADD(date,INTERVAL expr unit),

date_add(n,interval)

从日期时间上加上指定的时间间隔

8

DATE_SUB(date,INTERVAL expr unit)

date_sub(n,interval)

从日期时间上减去指定的时间间隔

9

DATEDIFF(expr1,expr2)

datediff(n1,n2)

返回两个日期值之间的天数

10

DAY(date)

day(n)

返回指定日期的月份的日期值

11

DAYNAME(date)

dayname(n)

返回指定日期的星期名称

12

DAYOFMONTH(date)

dayofmonth(n)

返回指定日期的月份的日期

13

DAYOFWEEK(date)

dayofweek(n)

返回给定日期的星期索引

14

DAYOFYEAR(date)

dayofyear(n)

返回给定日期所在当前年份中的第几天

15

FORMAT_PICO_TIME(n)

format_pico_time(n)

将皮秒值转换为带单位指示符的文本字符串

16

FROM_DAYS(N)

from_days(n)

将天数值转换为日期

17

FROM_UNIXTIME(unix_timestamp [ , format])

from_unixtime(n [, 'format'])

将unix时间戳转化为以当前会话时区表示的日期时间值

18

GET_FORMAT({DATE|TIME|DATETIME}, {'EUR'|'USA'|'JIS'|'ISO'|'INTERNAL'})

get_format({DATE|TIME|DATETIME}, {'EUR'|'USA'|'JIS'|'ISO'|'INTERNAL'})

返回指定的国家地区时间输出格式

19

HOUR(time)

hour(n)

返回给定时间的小时部分

20

LAST_DAY(date)

last_day(date)

计算日期所在月份的最后一天

21

MAKEDATE(year,dayofyear)

makedate(year,dayofyear)

返回指定年份第 n 天的日期值

22

MAKETIME(hour,minute,second)

maketime(hour,minute,second)

返回由参数指定组成的时间值

23

MICROSECOND(expr)

microsecond(n)

返回指定时间的微秒值

24

MINUTE(time)

minute(n)

返回指定时间的分钟值

25

MONTH(date)

month(n)

返回指日期的月份值

26

MONTHNAME(date)

monthname(n)

返回指日期的月份名称

27

PERIOD_ADD(P,N)

period_add(p,n)

指定年月上加上指定的月份数

28

PERIOD_DIFF(P1,P2)

period_diff(p,n)

计算两个年月值相差的月份数

29

QUARTER(date)

quarter(n)

返回日期的季度数

30

SECOND(time)

second(n)

返回指定日期时间的秒值

31

SEC_TO_TIME(seconds)

sec_to_time(n)

将秒数转换为时分秒格式并返回

32

SUBTIME(expr1,expr2)

subtime(n1,n2)

指定时间上减去指的的时间间隔

33

TIMEDIFF(expr1,expr2)

timediff(n1,n2)

计算两个时间的差值

34

TIMESTAMPADD(unit,interval,datetime_expr)

timestampadd('unit',interval,n)

将指定时间间隔加到日期时间值上

35

TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2)

timestampdiff('unit',n1,n2)

返回两个日期时间的时间间隔

36

TIME_FORMAT(time,format)

time_format(time,format)

按照指定的格式格式化时间

37

TIME_TO_SEC(time)

time_to_sec(n)

将输入的时间转换为秒数

38

TO_DAYS(date)

to_days(n)

将指定日期转换为距离0年的天数

39

TO_SECONDS(expr)

to_seconds(n)

返回日期时间值 n 距离 0 年的秒数

40

UTC_DATE()

utc_date()

获取当前服务器的 utc 日期(即格林威治标准日期)

41

UTC_TIME([fsp])

utc_time([n])

获取当前服务器的 utc 时间(即格林威治标准时间)

42

UTC_TIMESTAMP([fsp])

utc_timestamp([n])

获取当前服务器的utc日期时间(即格林威治标准日期时间)

43

WEEK(date[,mode])

week(n [, mode])

返回日期位于当年的第几周

44

WEEKDAY(date)

weekday(n)

返回指定日期的星期索引

45

WEEKOFYEAR(date)

weekofyear(n)

返回指定日期的所在周数值

46

YEAR(date)

year(n)

提取日期中的年份值

47

YEARWEEK(date[,mode])

yearweek(n [, mode])

返回指定日期的年份与日期所在当年周数值

聚集函数

1

AVG(expr)

avg(expression)

计算平均值

2

BIT_AND(expr)

bit_and(expression)

按位与运算

3

BIT_OR(expr)

bit_or(expression)

按位或运算

4

COUNT(expr)

count(expression)

返回查询行数

5

GROUP_CONCAT(expr)

group_concat(expression)

将分组中指定列或表达式连接组成新的字符串

6

MAX(expr)

max(expression)

最大值

7

MIN(expr)

min(expression)

最小值

8

STDDEV(expr)

stddev(expression)

总体标准值

9

STDDEV_POP(expr)

stddev_pop(expression)

总体标准差

10

STDDEV_SAMP(expr)

stddev_samp(expression)

样本标准差

11

SUM(expr)

sum(expression)

总和

12

VAR_POP(expr)

var_pop(expression)

总体方差

13

VAR_SAMP(expr)

var_samp(expression)

样本方差

14

VARIANCE(expr)

variance(expression)

总体方差

窗口函数

1

CUME_DIST()

cume_dist()

返回当前行的累积分布

2

DENSE_RANK()

dense_rank()

返回所在分区内的排名

3

FIRST_VALUE(expr)

first_value(expression)

返回当前关联窗口的第一行

4

LAG(expr [, N[, default]])

lag(value anyelement[, offset integer [,default anyelement ]])

返回当前行所在分区内当前行之前指定行之内的值

5

LAST_VALUE(expr)

last_value(expression)

返回当前关联窗口的最后一行

6

LEAD(expr [, N[, default]])

lead(value anyelement[, offset integer [,default anyelement ]])

返回当前行所在分区内当前行后之指定行之内的值

7

NTH_VALUE(expr, N)

nth_value(value any, nth integer)

从当前行关联窗口的指定一行中返回评估值

8

NTILE(N)

ntile(num_buckets integer)

将当前行所在分区内的所有行尽可能平均分成指定数量的区间

9

PERCENT_RANK()

percent_rank()

返回当前行所在分区内的相对排名

10

RANK()

rank()

返回当前行所在分区内的排名

11

ROW_NUMBER()

row_number()

返回当前行所在分区内的序号

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论