欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ORACLE官方SQL语言参考之单列函数实例讲解

程序员文章站 2022-03-26 17:58:00
单列函数 单行函数为查询的表或视图的每一行返回单个结果行。这些函数可以出现在 select 列表by中,where子句, 以子句startwith和connect, 并having子句。 数值函数...

单列函数

单行函数为查询的表或视图的每一行返回单个结果行。这些函数可以出现在 select 列表by中,where子句, 以子句startwith和connect, 并having子句。

数值函数

数值函数接受数字输入并返回数值。大多数数值函数返回精确到38位小数的number值。先验功能,cos,coshsinh,exp,ln,log,sin,sqrt,tan和tanh精确到36位小数。先验函数acos、asin、atan和atan2精确到30位小数。数值函数为:

abs

acos

asin

atan

atan2

bitand

ceil

cos

cosh

exp

floor

ln

log

mod

nanvl

power

remainder

round (number)

sign

sin

sinh

sqrt

tan

tanh

trunc (number)

width_bucket

返回字符值的字符函数

返回字符值的字符函数返回以下数据类型的值, 除非另有记录:

如果输入参数为char或varchar2, 则返回的值为varchar2.

如果输入参数为nchar或nvarchar2, 则返回的值为nvarchar2.

函数返回的值的长度受返回的数据类型的最大长度的限制。

对于返回char或varchar2的函数, 如果返回值的长度超过了限制, 则 oracle 将截断它并返回结果, 而不会出现错误消息。

对于返回clob值的函数, 如果返回值的长度超过了限制, 则 oracle 将引发错误并不返回任何数据。

返回字符值的字符函数为:

chr

concat

initcap

lower

lpad

ltrim

nchr

nls_initcap

nls_lower

nls_upper

nlssort

regexp_replace

regexp_substr

replace

rpad

rtrim

soundex

substr

translate

translate ... using

trim

upper

返回数字值的字符函数

返回数字值的字符函数可以作为参数的任何字符数据类型。返回数字值的字符函数为:

ascii

instr

length

regexp_count

regexp_instr

字符集函数

字符集函数返回有关字符集的信息。字符集函数为:

nls_charset_decl_len

nls_charset_id

nls_charset_name

日期时间函数

datetime 函数在日期 (date)、时间戳 (timestamp时间戳timestamp、withtimezone时区的戳和timestampwithlocaltime时区的戳) 上运行zone) 和间隔 (间隔intervaldaytosecond、intervalyeartomonth) 值。

一些 datetime 函数是为 oracledate数据类型 (add_months、current_date、last_day、new_time和next_day) 设计的。如果提供时间戳值作为参数, 则 oracle 数据库内部将输入类型转换为date值并返回date值。异常是months_between函数, 它返回一个数字, 而round和trunc函数不接受时间戳或间隔值。

其余的 datetime 函数设计为接受三种类型的数据 (日期、时间戳和间隔), 并返回这些类型之一的值。

所有返回当前 datetime 信息 (如sysdate、systimestamp、current_timestamp等) 的 datetime 函数都将为每个 sql 语句计算一次, 而不管它们有多少次在该语句中引用。

日期时间函数为:

add_months

current_date

current_timestamp

dbtimezone

extract (datetime)

from_tz

last_day

localtimestamp

months_between

new_time

next_day

numtodsinterval

numtoyminterval

ora_dst_affected

ora_dst_convert

ora_dst_error

round (date)

sessiontimezone

sys_extract_utc

sysdate

systimestamp

to_char (datetime)

to_dsinterval

to_timestamp

to_timestamp_tz

to_yminterval

trunc (date)

tz_offset

一般比较函数

一般比较函数从一组值中确定最大值或最小价值。一般比较函数为:

greatest

least

转换函数

转换函数将值从一种数据类型转换为另一种。通常, 函数名称的形式遵循约定datatypetodatatype。第一个数据类型是输入数据类型。第二个数据类型是输出数据类型。sql 转换函数为:

asciistr

bin_to_num

cast

chartorowid

compose

convert

decompose

hextoraw

numtodsinterval

numtoyminterval

rawtohex

rawtonhex

rowidtochar

rowidtonchar

scn_to_timestamp

timestamp_to_scn

to_binary_double

to_binary_float

to_blob

to_char (character)

to_char (datetime)

to_char (number)

to_clob

to_date

to_dsinterval

to_lob

to_multi_byte

to_nchar (character)

to_nchar (datetime)

to_nchar (number)

to_nclob

to_number

to_single_byte

to_timestamp

to_timestamp_tz

to_yminterval

treat

unistr

大型对象函数

大型对象函数在 lob 上运行。大对象函数为:

bfilename

empty_blob, empty_clob

集合函数

集合函数对嵌套表和 varrays 进行操作。sql 集合函数是:

cardinality

collect

powermultiset

powermultiset_by_cardinality

set

分层函数

分层函数将分层路径信息应用于结果集。分层函数为:

sys_connect_by_path

数据挖掘函数

数据挖掘功能对使用dbms_data_mining包或 oracle 数据挖掘 java api 生成的模型进行操作。sql 数据挖掘函数是:

cluster_id

cluster_probability

cluster_set

feature_id

feature_set

feature_value

prediction

prediction_bounds

prediction_cost

prediction_details

prediction_probability

prediction_set

另请参见:

oracle 数据挖掘应用人员关于 sql 数据挖掘函数信息的指南

xml 函数

xml 函数操作或返回 xml 文档或片段。这些函数使用的参数未定义为 ansi/iso/iec sql 标准的一部分, 但被定义为万维网联合体 (w3c) 标准的一部分。函数执行的处理和操作由相关的 w3c 标准定义。下表提供了指向适用于这些与 xml 相关的每个参数的规则和准则的 w3c 标准的相应部分的链接。使用这些 xml 函数之一的 sql 语句 (其中任何参数不符合相关的 w3c 语法) 将导致错误。特别注意的是, 并非数据库列的值中允许的每个字符都被视为合法的 xml。

syntax elementw3c standard url

value_exprhttps://www.w3.org/tr/2006/rec-xml-20060816

xpath_stringhttps://www.w3.org/tr/1999/rec-xpath-19991116

xquery_stringhttps://www.w3.org/tr/2007/rec-xquery-semantics-20070123/

namespace_stringhttps://www.w3.org/tr/2006/rec-xml-names-20060816/

identifierhttps://www.w3.org/tr/2006/rec-xml-20060816/#nt-nmtoken

有关使用这些函数选择和查询 xml 数据的详细信息, 包括格式输出的信息, 请参阅oracle xml db 开发人员指南.

sql xml 函数是:

appendchildxml

deletexml

depth

existsnode

extract (xml)

extractvalue

insertchildxml

insertchildxmlafter

insertchildxmlbefore

insertxmlafter

insertxmlbefore

path

sys_dburigen

sys_xmlagg

sys_xmlgen

updatexml

xmlagg

xmlcast

xmlcdata

xmlcolattval

xmlcomment

xmlconcat

xmldiff

xmlelement

xmlexists

xmlforest

xmlisvalid

xmlparse

xmlpatch

xmlpi

xmlquery

xmlroot

xmlsequence

xmlserialize

xmltable

xmltransform

有关使用这些函数选择和查询 xml 数据的详细信息, 包括格式输出的信息, 请参阅oracle xml db 开发人员指南.

sql xml 函数是:

编码和解码功能

编码和解码功能允许您检查和解码数据库中的数据。编码和解码功能如下:

decode

dump

ora_hash

vsize

有关使用这些函数选择和查询 xml 数据的详细信息, 包括格式输出的信息, 请参阅oracle xml db 开发人员指南.

sql xml 函数是:

与空相关的函数

与null相关的函数便于空处理。与null相关的函数有:

coalesce

lnnvl

nanvl

nullif

nvl

nvl2

有关使用这些函数选择和查询 xml 数据的详细信息, 包括格式输出的信息, 请参阅oracle xml db 开发人员指南.

sql xml 函数是:

环境和标识符函数

环境和标识符函数提供有关实例和会话的信息。环境和标识符函数是:

sys_context

sys_guid

sys_typeid

uid

user

userenv

有关使用这些函数选择和查询 xml 数据的详细信息, 包括格式输出的信息, 请参阅oracle xml db 开发人员指南.

sql xml 函数是:

appendchildxml

deletexml

depth

existsnode

extract (xml)

extractvalue

insertchildxml

insertchildxmlafter

insertchildxmlbefore

insertxmlafter

insertxmlbefore

path

sys_dburigen

sys_xmlagg

sys_xmlgen

updatexml

xmlagg

xmlcast

xmlcdata

xmlcolattval

xmlcomment

xmlconcat

xmldiff

xmlelement

xmlexists

xmlforest

xmlisvalid

xmlparse

xmlpatch

xmlpi

xmlquery

xmlroot

xmlsequence

xmlserialize

xmltable

xmltransform