狐表连接oracle的字符串,Oracle - Foxtable 中文帮助文档

Oracle

本章介绍的是使用Oracle时候,SQL语句支持的常用函数。

字符函数

INSTR

返回给定子字符串首次出现的位置。

LENGTH

返回给定字符串的长度。

LOWER

返回字符串的小写形式。

UPPER

返回字符串大写形式。

SUBSTR

返回从指定位置开始指定长度的字符串,例如:SUBSTR(‘abcdefg’, 2, 3) = ‘bcd’

REPLACE

将指定的子字符串替换为其它的字符串,例如:REPLACE(‘abcdefg’,’bc’,’45’) =

‘a45defg’

数学函数

Abs

返回给定数值的绝对值。

CEIL

返回大于或等于给定数值的最小整数。

Floor

返回小于或等于给定数值的最大整数。

Round

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

例如:

SELECT 客户,Count(*) AS 订单数, SUM(数量) AS 数量, Round(SUM(数量 * 单价 * (1 – 折扣)), 2) AS

金额 FROM {订单} GROUP BY 客户

上述语句的金额由数量、单价、折扣计算得出,且保留两位小数。

日期函数

SYSDATE

返回系统日期和时间。

例如加载当天的订单:

Select * From 订单 Where 订购日期 = SYSDATE

TO_CHAR

获得日期值的指定部分。

语法:

TO_CHAR(date,interval)

date: 日期值

interval:字符型,表示希望返回的时间部分。

interval的可设置值有:

YYYY:年

Q: 季度

WW: 周

DD: 天

HH24:小时

MI: 分钟

SS: 秒

D: 星期几

DDD: 一年中的某一天

需要注意的是,TO_CHAR返回的是一个数字,而不是数值,例如加载1998年入职的员工:

Select * From EMPLOYEES Where

To_Char(Hire_Date,’YYYY’) = ‘1998’

TO_DATE

将字符串转换为日期。

例如加载1994年8月14日入职的员工:

Select * From EMPLOYEES Where HIRE_DATE = TO_DATE(‘8/16/1994′,’MM/DD/YYYY’)

ADD_MONTHS

给日期值加上指定的月数。

例如加载最近两个月入职的员工:

Select * From EMPLOYEES Where Hire_Date >

ADD_MONTHS(SYSDATE,-2)

空值处理函数

NVL

判定一个表达式的值是否为空,如果不为空,则返回表达式的值,否则返回一个替代值。

语法

NVL(expression, value)

expression:一个表达式,如果此表达式的值不为空,则返回此值。

value:

一个替代值,如果表达式的值为空,则返回此替代值。

例如:

Select 日期, 产品, 数量, 数量, 单价,

NVL(折扣,0) As 折扣 From

{订单}

上述的语句中,如果已经输入折扣,则正常显示折扣,否则折扣列显示的是0。

再次提示:0和空值是两回事,空值表示没有输入数据,而0意味着用户已经输入了一个为0的值。

COALESCE

COALESC函数可以指定任意多个参数,并返回这些参数中第一个不为空的值,如果全部为空,则返回空值。

COALESCE函数相当于NVL函数的增强版。

条件语句

Case When

Case When语句用于进行条件判断。

语法1

Case 表达式

When 比较值1 Then 返回值1

When 比较值2 Then 返回值2

When 比较值3 Then 返回值3

….

Else 默认返回值

End

当表达式等于比较值1时,则得到返回值1,当表达式等于比较值2时,则得到返回值2,其余类推;当比较结束,没有符合的比较值时,则得到默认返回值。

例如

Select CName As 客户名称,

(Case CLevel

When 1 Then ‘VIP客户’

When 2 Then ‘高级客户’

When 3 Then ‘普通客户’

Else ‘错误等级’

End) As 客户等级 From {客户}

语法2

Case

When 表达式1 Then 返回值1

When 表达式2 Then 返回值2

When 表达式3 Then 返回值3

Else 默认返回值

End

当表达式1成立时,则得到返回值1,当表达式2成立时,则得到返回值2,其余类推;没有表达式成立时,则得到默认返回值。

例如:

Select 姓名,

(Case

When 体重 < 40 Then ‘偏瘦’

When 体重 > 50 Then ‘偏胖’

Else ‘适中’

End) As 体型 From {学生}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值