金仓数据库 KingbaseES 与 Oracle 的兼容性说明(3. 常用函数)

3. 常用函数

3.1. 有区别的函数

表 3.1.6 有区别的函数

序号

Oracle函数名

KingbaseES函数名

功能简要说明

数值函数

1

REMAINDER(n2,n1)

/

取 第一个参数除以 第二个参数的余 数,参数类型是 number或者可以 转换为number的

2

NANVL(n2,n1)

/

当n2为NaN 时,函数返回n1 当n2不为NaN时, 函数返回n2,参 数类型是浮点数

3

/

cbrt(dp)

立方根函数

4

/

degrees(dp)

把 弧度转换为角度

5

/

radians(dp)

把 角度转换为弧度

6

/

div(y numeric,x numeric)

y/x的整数商

7

/

pi()

常数值

3.14159265358979

8

/

scale(numeric)

返回参数的精度 ,小数点后位数

字符函数

1

CHR(int,[USING NCHAR_CS])

chr(int)

返回int类型参 数指定的值的字 符,KingbaseES 不允许为0,Oracle 可以输入0

2

NCHR(number)

/

返回 number类型值的 国际字符,Kingb aseES不支持超出 字符范围的数值

3

REGEXP_REPLACE (source_char,pattern, replace_string,position, occurrence,match_param)

regexp_replace(string text,pattern text, replacement text [, flags])

替换 匹配。Oracle与 KingbaseES使用 方式部分不同, Oracle中,position代表从源第几个字符开始 occurrence代表第几次替换。 KingbaseES没有这个参数

4

REGEXP_COUNT(source_char pattern[,position [,match_param]])

regexp_count(source_char,pattern [,position, [,match_param]])

返回 匹配字符串数量。 Oracle与KingbaseES的某些数据类型不同 导致结果不同,例如time类型。 Oracle与KingbaseES的正则中 match_param的意义有部分不同导致结 果不同,可参考 正则表达式元语法 。

5

REGEXP_INSTR(source_char, pattern [,position[,occurrence [,return_option [,match_param [,subexpr]]]]])

regexp_instr(source_char,pattern [,position [,occurrence [,return_option [,match_param [,subexpr]]]]])

返回字 符串的起始位置,或者结束位置。 Oracle与KingbaseES的某些数据类型不同 导致结果不同,例如time类型。 Oracle与KingbaseES的正则中 match_param的意义有部分不同导致结 果不同,可参考 正则表达式元语法 。

6

/

strpos(string,substring)

position(substring in string)

返回指定字符串位置

7

/

convert(expr1 text,[,expr2 text],expr3 text)

把字符串 转换为expr3 中声明的编码

8

NLS_INITCAP(char,[NLS_SORT = sort])

INITCAP(string)

将每一个词 的第一个字母转 换为大写形式并 把剩下的字母转 换为小写形式。

9

NLS_LOWER(char,nlsparam)

lower(string)

将字符串 转换为小写形式

10

CONCAT(char1,char2)

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

串接所有参数的 文本表示。NULL 参数被忽略。 Oracle :支持2个参数。 KingbaseES :支持多个参数

11

/

regexp_matches(string text, pattern text[,flags text])

返回对 string匹配一个 POSIX正则表达式 得到的所有子串

日期类函数

1

CURRENT_TIMESTAMP (precision)

CURRENT_TIMESTAMP

返 回当前日期时间 区别是精度不同

2

/

age(timestamp,timestamp)

age(timestamp)

减去参数,生成一个使用年、月(而不是只用日)的 "符号化"的结果

3

/

clock_timestamp()

返回 当前日期和时间

4

/

date_part(text,timestamp)

date_part(text,interval)

返回 日期时间的子域

5

TRUNC(date,fmt)

date_trunc(text,timestamp)

date_trunc(text,interval)

返回截断到参数指定的日期时间

6

TO_DSINTERVAL(sql_format)

make_interval(years int DEFAULT 0, months int DEFAULT 0, weeks int DEFAULT 0, days intDE FAULT 0, hours int DEFAULT 0, mins int DEFAULT 0, secs double precision DEFAULT 0.0)

构造一个interval,输入参数一个是字符串,一 个是数字

7

/

now()

返回 当前日期和时间

比较函数

1

GREATEST(expr,expr,expr,...)

LEAST(expr,expr,expr,...)

GREATEST(value[, ...])

LEAST(value [,...])

选取最大或者最小的数值

oracle:只要有一个参数是null,则结果返回null

KingbaseES:全部参数是null才返回null

序列函数

1

/

currval(regclass)

返回最近一 次用nextval获取 的指定序列的值

2

/

nextval(regclass)

递增 序列并返回新值

3

/

setval(regclass,bigint)

setval(regclass,bigint,boolean)

设置序列的当前值

4

/

lastval()

返回最近一 次用nextval获取 的任何序列的值

大对象函数

1

/

clob_import(string,string)

将指定的文件以 clob大对象的形 式导入数据库。

2

/

clob_export(clob,string,string)

将clob 大对象的内容导 出到磁盘文件。

3

/

blob_import(string,string)

将指定的文件以 blob大对象的形 式导入数据库。

4

/

blob_export(blob,string,string)

将blob 大对象的内容导 出到磁盘文件。

Null相关函数

1

NANVL(n2,n1)

CASE WHEN n2 is nan THEN n1 ELSE n2 END

浮点数 NAN值判断,如 果n2是NAN则返回 n1,否则返回n2

2

/

NULLIF(value1,value2)

当value1和value2相等时,NULLIF返回一个空值。 否则它返回value1

Environment 和Identifier 函数

1

/

version()

返回当前版本号

分析和聚集函数

1

COLLECT([DISTINCT UNIQUE] column [ORDER BY expr])

array_agg(expression)

形式上类似: KingbaseES返回 参数类型的数组 Oracle 返回参 数类型的嵌套表

2

CORR_KCORR_S(expr1,expr2,

[COEFFICIENT ONE_SIDED_SIG ONE_SIDED_SIG_POS

ONE_SIDED_SIG_NEG TWO_SIDED_SIG])

/

相关率

3

LISTAGG(measure_expr, delimiter) WITHIN GROUP(order_by_clause)

string_agg(expression,delimiter)

输入 值连接成一个串 ,用定界符分隔

4

MEDIAN(expr)

/

返回中间值

5

STATS_BINOMIAL_TEST (expr1, expr2, p)

/

统 计二项测试是一 个精确概 率测试用于二分 变量,那里只有两 个可能值存在。 它测试一个样品 之间的差异比例 和给定的比例

6

STATS_CROSSTAB(expr1,expr2)

/

用于分析两个变量

7

STATS_F_TEST(expr1,expr2)

/

测试两个方差是否有明显的不同

8

STATS_KS_TEST(expr1,expr2)

/

STATS_KS_TEST是柯尔莫哥洛 夫斯米尔诺夫函 数,它比较 expr1和expr2,判断他们是来自 同一个总体还是来自具有相同分布的总体。

9

STATS_MODE(expr)

/

将expr传入的一组值作为分析对象, 返回其中出现频率最高的值。

10

STATS_MW_TEST(expr1,expr2)

/

通过曼惠特尼测试比较两个独立样本,以检验 两个总体具有相同分布函数的零假设 与两个不同分布函数的备择假设

11

STATS_ONE_WAY_ANOVA (expr1, expr2)

/

单向方差分析函 数(统计一维方差 分析)测试差异在 意味着(为团体或 变量),通过比较 两种统计学意义 不同的估计方差

12

STATS_T_TEST_ONE(expr1)

/

单样本检验

13

STATS_T_TEST_PAIRED (expr1, expr2)

/

双样本匹配检验

14

STATS_T_TEST_INDEP (expr1,expr2)

/

具有相同方差的两个独立组检验

JSON函数

1

/

to_json(anyelement)

to_jsonb(anyelement)

返回为json或者jsonb

2

/

array_to_json(anyarray [,pretty_bool])

把数组作为一个JSON 数组返回

3

/

row_to_json(record [,pretty_bool])

把行作为一个JSON 对象返回

4

/

json_build_array(VARIADIC "any")

jsonb_build_array(VARIADIC "any")

从一个可变参数列表构造一个可能包含异质类型的 JSON数组。

5

/

json_build_object(VARIADIC "any")

jsonb_build_object(VARIADIC "any")

从一个可变参数列表构造一个JSON 对象

6

/

json_object(text[])

jsonb_object(text[])

从一个文本数组构造一个JSON 对象

7

/

json_array_length(json)

jsonb_array_length(jsonb)

返回最外层 JSON数组中的元素数量

8

/

json_each(json)

jsonb_each(jsonb)

json_each_text(json)

jsonb_each_text(jsonb)

扩展最外层的JSON对象成为一组键/值对

9

/

json_extract_path( from_json json,VARIADIC path_elems text[])

jsonb_extract_path( from_json jsonb,VARIADIC path_elems text[])

返回path_elems指向的JSON值(等效于#>操作符)

10

/

json_extract_path_text( from_json json, VARIADIC path_elems text[])

jsonb_extract_path_text( from_json jsonb, VARIADIC path_elems text[])

text 以文本返回由path_elems指向的 JSON值(等效于#>>操作符)

11

/

json_object_keys(json)

jsonb_object_keys(jsonb)

返回最外层 JSON 对象中的键集合

12

/

json_populate_record(base anyelement, from_json json)

jsonb_populate_record(base anyelement, from_json jsonb)

扩展from_json中的对象成一个行,它的 列匹配由base定义的记录类型

13

/

json_populate_recordset (base anyelement, from_json json)

jsonb_populate_recordset (base anyelement, from_json jsonb)

扩展from_json中最外的对象数组为一个集合, 该集合的列匹配由base定义的记录类型

14

/

json_array_elements(json)

jsonb_array_elements(jsonb)

把一个 JSON数组扩展成一个JSON 值的集合

15

/

json_array_elements_text(json)

jsonb_array_elements_text (jsonb)

把一个 JSON数组扩展成一个text值集合

16

/

json_typeof(json)

jsonb_typeof(jsonb)

把最外层的 JSON值的类型作为一个文本字符

串返回

17

/

json_to_record(json)

jsonb_to_record(jsonb)

从一个 JSON对象构建一个任意的记录

18

/

json_to_recordset(json)

jsonb_to_recordset(jsonb)

从一个 JSON对象数组构建一个任意的记录集合

19

/

json_strip_nulls(from_json json)

jsonb_strip_nulls(from_json jsonb)

返回具有空值对象域的from_json。其它空值不变

20

/

jsonb_set(target jsonb,

path text[],new_value jsonb,

[create_missing boolean])

若create_missing为真(缺省是true) 并且通过path指定部分不存在,那 么返回target,它具有 path指定部分, new_value 替换部分, 或者new_value 添加部分

21

/

jsonb_insert(target jsonb, path text[], new_value jsonb,[insert_after boolean])

返回被插入了new_value对应的target

22

/

jsonb_pretty(from_json jsonb)

作为缩进JSON文本返回from_json

3.2. 无区别的函数

表 3.2.17 无区别的函数

序号

Oracle函数名

KingbaseES 函数名

功能简要说明

数值函数

1

ABS(n)

abs(x)

绝对值

2

ACOS(n)

acos(x) acosd(x)

反余弦

3

ASIN(n)

asin(x) asind(x)

反正弦

4

ATAN(n)

atan(x) atand(x)

反正切

5

ATAN2(n1,n2)

atan2(y, x)

y/x反正切

6

TAN(n)

tan(x) tand(x)

正切

7

EXP

exp(dp or numeric)

指数

8

FLOOR

floor(dp or numeric)

不大于 参数的最大整数 mod(y, x)

9

MOD

mod(y, x)

y/x的余数

10

SIGN

sign(dp or numeric)

参数的符号(-1,0,+1)

11

WIDTH_BUCKET

width_bucket(dp or numeric, dp or numeric, dp or numeric, int

返回一个桶

12

BITAND (expr1,expr2)

bitand(expr1,expr2 )

按位与 ,参数类型都是 number或者可以 转换为number的

13

LN(n)

ln(dp or numeric)

自然对数

14

LOG(n2,n1)

log(dp or numeric)

log(b numeric,x numeric)

KingbaseES中单个参数是以10为底的对数两个参数的形式 KingbaseES和Oracle一致

15

POWER(n2,n1)

power(a dp,bdp)

power(a numeric, b numeric)

返回a的b次幂

16

ROUND (n[, integer])

round(dp or numeric)

round(v numeric, s int)

圆整为最接近的整数

圆整为s位小数数字

17

SQRT ( n )

sqrt(dp or numeric)

平方根

18

TRUNC ( n1[,n2])

trunc(dp or numeric)

trunc(v numeric, s int)

截断(向零靠近)

截断为s位 小数位置的数字

19

CEIL ( n )

ceil(dp or numeric)

ceiling(dp or numeric)

不小于 参数的最小整数

20

BIN_TO_NUM(expr,...)

bin_to_num(expr ,...)

将二进制数转换为十进制。将任何数据类型或可以隐式转 换为数据类型的非数据类型作为参数,每个expr必须为0 或1。

字符函数

1

SUBSTR

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

提取子串

2

RPAD

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

用字符串expr3(第三个参数) 将字符串expr1(第一个参数) 从右边填充到指定的长度 expr2( 第二个参数),在 第三个参数缺省 时,填充空格。

3

REPLACE(char,search_string, replacement_string)

replace(string text, from text, to text)

将string中 出现的所有子串from 替换为子串to

4

REGEXP_SUBSTR( source_char, pattern, position, occurrence, match_param ,subexpr)

regexp_substr (string text, pattern text [, position int [, occurrence int [, flags text [, num int]]]])

在string 搜索一个POSIX 正则表达式字 符串,返回的搜 索到的子字符串

5

TRANSLATE(expr,from_string, to_string)

translate (string text, from text, to text)

string中任何 匹配from集合中 一个字符的字符 会被替换成to集 合中的相应字符

6

INSTRB(string, substring, position, occurrence)

instrb(expr1 text, expr2 text, [expr3 int [,expr4 int]])

在父字符串expr1 中的第expr3个位 置(从1开始)以 字符为单位开始 查找第expr4次出 现的子字符串的 位置,0表示不包 含子字符串expr2 。如果expr3为负 ,则从expr1的倒 数第expr3个位置 开始反向查找, 位置依然是从字 符串开头算起。

7

LENGTH

length(string)

length(string bytea,encoding name)

返回字符串长度

8

reverse(str)

reverse(str)

返回 反转的字符串。

9

UPPER

upper(string)

将字符串 转换成大写形式

10

LPAD(expr1 [,n,expr2])

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

将string 通过前置字符fill (默认是一个 空格)填充到长 度length。如果 string已经长于length ,则它被( 从右边)截断。

11

LTRIM(char,set)

ltrim(string text[, characters text])

从string 的开头删除最 长的只包含characters (默认是一 个空格)的字串 。在兼容ORACLE 的时候(ora_func_style 为true) ,characters只 能是一个字符。 ora_func_style为false 时可 以为多个字符。

12

RTRIM(char,set)

rtrim(string text[, characters text])

从string的结尾 删除最长的只包 含characters( 默认是一个空格 )的字串。在兼 容ORACLE的时候 (ora_func_style为true) ,characters 只能是一个字符。 ora_func_style为false 时可 以为多个字符。

13

TRIM ([LEADING |TRAILING| BOTH[ trim_character] from] [trim_character from] trim_source )

trim([leading |trailing| both] [characters from] string)

从string的开头 /结尾/两端删除 最长的只包含characters (默认是 一个空格)的串

14

ASCII(char)

ascii(string)

返回参数第一个 字符的ASCII代码

15

LENGTHB(char)

lengthb(string)

返回字符串的字节数

16

SUBSTRB( char,position[, sub string_length])

substrb(expr1 text,[from] expr2 int[, [for] expr3 int])

取 子字符串,在父 字符串expr1(第 一个参数)中的第 expr2(第二个参 数)个字节位置开 始取expr3(第三 个参数)个字节, 如果第三个参 数缺省,则从第expr2 (第二个参数 )个位置开始取右 面部分的全部, 如果第二个参数 为负,则是从父 字符串的尾部截 取expr3个字节。

日期时间

1

EXTRACT (field from expr)

extract (fieldfrom timestamp) extract(field from interval)

从当前日期时 间抽取时间字段

2

TO_CHAR (datetime,fmt)

to_char (timestamp, text)

日期 时间转换为字符

3

TO_TIMESTAMP (char, fmt)

to_timestamp (text, text)

返回日期时间

4

ADD_MONTHS ( date , integer )

ADD_MONTHS (expr1 日期/时间类型, expr2 INT)

返回expr1 加上expr2个 月的日期时间值

5

LAST_DAY ( date )

LAST_DAY(expr1 日期/时间类型)

返回日期中的 月份的最后一天

6

MONTHS_BETWEEN ( date1 , date2 )

MONTHS_BETWEEN ( date1 , date2 )

返 回日期的月份差

7

NEXT_DAY (date , char )

NEXT_DAY(expr1 日期/时间类型, expr2 TEXT)

返回expr 1日期后的第一个 由参数expr2命名 的日期,参数expr2 的值必须在周 一到周日范围中

8

SYSDATE

SYSDATE

返 回当前系统日期

9

SYSTIMESTAMP

SYSTIMESTAMP

返 回当前系统时间

10

TO_DATE(char, fmt)

to_date(text, text)

返回日期值 输入 参数一个是字符 串,一个是数字

11

TO_TIMESTAMP (char, fmt)

make_time(hour int, min int, sec double precision)

make_timestamp (year int, month int, day int, hour int, min int, sec double precision)

make_timestamptz (year int, month int, day int, hour int, min int, sec double precision, [ timezone text ])

to_timestamp (text, text)

返回日期时间值 输入 参数一个是字符 串,一个是数字

12

OVERLAPS

(start1,end1) OVERLAPS (start2,end2)

在两个时间域( 用它们的端点定 义)重叠的时候 得到真,当它们 不重叠时得到假

13

CURRENT_DATE

current_date

当前日期

大对象函数

1

EMPTY_BLOB()

EMPTY_CLOB()

empty_blob()

empty_clob()

返回空大对象

Decoding函数

1

DECODE(expr,search,result, default)

decode(expr ,search, result, default)

将 expr 和search值一 个一个比较。如 果相等则返回result 如果不等返回 default值。

NULL相关函数

1

COALESCE ( expr,...)

COALESCE(value [, ...])

COALE SCE函数返回它的 第一个非空参数 的值。当且仅当 所有参数都为空 时才会返回空。

2

LNNVL(condition)

LNNVL(condition)

用于where条件中,condition为真时返回假,假时返回真

3

NULLIF ( expr1 , expr2 )

NULLIF(value1, value2)

KingbaseES :value1 可以为null oracle:value1 不能为null

4

NVL(expr1, expr2)

NVL(expr1, expr2)

当 expr1 为 NULL 时,用 expr2 代 替本表达式的值

5

NVL2 ( expr1 , expr2 , expr3 )

NVL2 ( expr1 , expr2 , expr3 )

当 expr1 为 NULL 时,返回值为 expr3;否则为 expr2

Environment 和Identifier 函数

1

sys_guid()

sys_guid()

返 回一个全局唯一 的标识符

2

uid

uid

返回目前执 行环境下的用户 ID

3

user

User /current_user

返回当前用户

分析和聚集函数

1

COUNT (* DISTINCT ALL expr )

count

非空 的输入行的数目

2

COVAR_POP ( expr1 , expr2 ) OVER (a nalytic_clause)

covar_pop(Y, X)

总体协方差

3

COVAR_SAMP( expr1 , expr2 ) OVER ( analytic_clause )

covar_samp(Y, X)

样本协方差

4

CUME_DIST( expr ,) WITHIN GROUP (ORDER BY expr)

cume_dist(args) WITHIN GROUP (ORDER BY sorted_args)

当 前行的相对排名

5

DENSE_RANK(expr,) WITHIN GROUP(ORDER BY expr)

dense_rank(args) WITHIN GROUP (ORDER BY sorted_args)

不带间 隙的当前行排名

6

MAX (DISTINCT ALL expr )

max(expression)

所有输入值中expression 的最大值

7

MIN (DISTINCT ALL expr )

min(expression)

所有输入值中expression 的最小值

8

PERCENT_RANK ( expr ,) WITHIN GROUP( ORDER BY expr)

percent_rank(args) WITHIN GROUP (ORDER BY sorted_args)

假想行的相 对排名,范围从 0 到 1

9

PERCENTILE_CONT ( expr ) WITHIN GROUP ( ORDER BY expr)

percentile_cont (fractions) WITHIN GROUP (ORDER BY sort_expression)

连续百分率

10

PERCENTILE_DISC ( expr ) WITHIN GROUP ( ORDER BY expr)

percentile_disc(fraction) WITHIN GROUP (ORDER BY sort_expression)

离散百分率

11

RANK(expr,) WITHIN GROUP ( ORDER BY expr)

rank(args) WITHIN GROUP (ORDER BY sorted_args)

假想 行的排名,为重 复的行留下间隔

12

REGR_SLOPE

regr_slope(Y, X)

由(X, Y)对决定的 最小二乘拟合的 线性方程的斜率

13

REGR_INTERCEPT

regr_intercept (Y, X)

由(X, Y)对决 定的最小二乘拟 合的线性方程的 y截距

14

REGR_COUNT

regr_count(Y, X)

两个 表达式都不为空 的输入行的数目

15

STDDEV (DISTINC TALL expr )

stddev (expression)

输入值 的样本标准偏差

16

STDDEV_POP ( expr )

stddev_pop (expression)

输入值 的总体标准偏差

17

STDDEV_SAMP ( expr )

stddev_samp (expression)

输入值 的样本标准偏差

18

SUM (DISTINCT ALL expr )

sum(expression)

所有输入的 expression的和

19

VAR_POP ( expr )

var_pop (expression)

输 入值的总体方差

20

FIRST

first_value (value any)

返回 在窗口帧中第一 行上计算的value

21

FIRST_VALUE *

first_value (value any)

返回 在窗口帧中第一 行上计算的value

22

LAG

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

返回value, 它在分区 内当前行的之前offset 个位置的行 上计算;如果没 有这样的行,返 回default替代。 (作为value必 须是相同类型)。 offse t和default都 是根据当前行计 算的结果。如果 忽略它们,则offset 默认是1,default 默认是空值

23

LAST

last_value (value any)

返回在 窗口帧中最后一 行上计算的value

24

LAST_VALUE *

last_value (value any)

返回在 窗口帧中最后一 行上计算的value

25

LEAD

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

返回 value,它在分区 内当前行的之后offset 个位置的行 上计算;如果没 有这样的行,返 回default替代。 (作为value必须 是相同类型)。offset 和default都 是根据当前行计 算的结果。如果 忽略它们,则offset 默认是1,default 默认是空值

26

NTH_VALUE *

nth_value(value any, nth integer)

返回在窗口帧 中第nth行(行从 1计数)上计算的 value;没有这样 的行则返回空值

27

NTILE

ntile (num_buckets integer)

从1到参数 值的整数范围, 尽可能等分分区

28

ROW_NUMBER

row_number()

当前行在其分区 中的行号,从1计

29

CORR ( expr1 , expr2 )[OVER ( analytic_clause )]

corr(Y,X)[OVER(analytic_clause)]

相关系数

30

AVG (DISTINCT ALL expr ) OVER ( analytic_clause )

avg(expression)OVER ( analytic_clause )

所 有输入值的平均 值(算术平均)

XML函数

1

XMLCOMMENT(value_expr)

xmlcomment(text)

创建了一个 XML 值

2

XMLCONCAT (XMLType_instance)

xmlconcat(xml[, ...])

由单个 XML 值组 成的列表串接成 一个单独的值, 这个值包含一个 XML 内容片断

3

XMLELEMENT

xmlelement(name name [, xmla ttributes(value [AS attname] [, ... ])] [, content, ...])

表达式 xmlelement使用 给定名称、属性 和内容产生一个 XML 元素。

4

XMLFOR EST(value_expr)

xmlforest (content [AS name] [, ...])

表达 式xmlforest使用 给定名称和内容 产生一个元素的 XML 森林(序列)。

5

XMLPI

xmlpi(name target [, content])

表达 式xmlpi创建一个 XML 处 理指令。如果存 在内容,内容不 能包含字符序列

6

XMLROOT

xmlroot(xml, version text | no value [, standalone yes | no | no value])

表达式 xmlroot修改一个 XML 值 的根结点的属性

7

XMLAGG

xmlagg(xml)

函 数xmlagg是一个 聚集函数。它将 聚集函数调用的 输入值串接起来

8

APPENDCHILDXML

appendchildxml(xml, XPath_string text, value_expr text[, nam espace_string])

将用 户提供的值作为 XPath表达式指示 的节点的子节点 附加到目标XML上

9

UPDATEXML

updatexml(xml, XPath_string text, value_expr text[, nam espace_string])

将XML实例 、XPath及新的xml 更新值对作为参 数,并返回XML具 有更新值的实例

层次查询函数

1

SYS_CONNECT_BY_PATH (column,char)

SYS_CONNECT_BY_PATH (Expression,char)

返回从根元组到 当前元组的路径 ,这个路径是由c har字符分隔的在 各个元组上计算 的Expression的 值连接构成的。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
人大金仓数据库可以通过使用持久连接和DBLink来实现远程访问Oracle数据库。首先,我们需要使用以下语句在人大金仓数据库中创建一个到目标Oracle数据库的持久连接: SELECT dblink_connect_u('myconn_db_b', 'hostaddr=xxx.xxx.xxx.xxx port=54321 dbname=db_b user=u_b password=密码'); 其中,xxx.xxx.xxx.xxx是目标Oracle数据库的主机地址,54321是目标Oracle数据库的端口号,db_b是要访问的数据库名称,u_b和密码是用于连接目标Oracle数据库的用户名和密码。这将会创建一个名为myconn_db_b的持久连接。 接下来,您可以使用人大金仓数据库的DBLink功能来访问远程Oracle数据库。具体使用方法可以参考人大金仓数据库的相关文档或者使用以下语句: SELECT * FROM tablename@myconn_db_b; 其中,tablename是您要访问的远程Oracle数据库中的表名,myconn_db_b是上一步创建的持久连接名称。通过这种方式,您可以在人大金仓数据库中访问并操作远程Oracle数据库的数据。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [数据库审计系统需求说明.docx](https://download.csdn.net/download/qq_43934844/87590316)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [.NET CORE ORM 达梦 人大金仓 操作数据库 访问 连接](https://blog.csdn.net/jhl52771/article/details/109631622)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [人大金仓Kingbase数据库使用dblink进行跨库操作示例](https://blog.csdn.net/wsdhla/article/details/130963638)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值