FirebirdSQL内置函数使用说明

rel=File-List href="file4142.files/filelist.xml"> FirebirdSQL内置函数使用说明

FirebirdSQL内置函数使用说明

*号为FB2.0加入的函数

整理:剑雷(jianlei) 2006-10-13

1.    COUNT, AVG, MAX, MIN, SUM

说明:通用统计函数,不详细介绍了

 

2.    EXTRACT(timestamp_part FROM value)

说明:EXTRACT(YEAR/MONTHE/DAY/WEEKDAY FROM 字段名)

从日期型字段中分离出年,,日及一个星期的第几天

 

3.    CAST(value AS datatype)

说明:转换数据类型

 

4.    LOWER() *

说明:返回小写值

 

5.    UPPER()

说明:返回大写值

 

6.    TRIM() *

说明:去除字符串两边的空格

 

7.    SUBSTRING(string FROM pos FOR length)

说明:字符串子串,注意,第一个字符的位置是1

 

8.    BIT_LENGTH *

说明:返回字符串位(bit)

 

9.    CHAR_LENGTH/CHARACTER_LENGTH *

说明:返回字符串字符数

 

10.   OCTET_LENGTH *

说明:返回字符串字节数

 

11.   CASE

说明:通过执行外来的一组条件取得相应的返回值

举例

i) 简单

SELECT o.ID, o.Description,

CASE o.Status

WHEN 1 THEN 'confirmed'

WHEN 2 THEN 'in production'

WHEN 3 THEN 'ready'

WHEN 4 THEN 'shipped'

ELSE 'unknown status ''' || o.Status || ''''

END

FROM Orders o;

ii) 表达式

SELECT o.ID, o.Description,

CASE

WHEN (o.Status IS NULL) THEN 'new'

WHEN (o.Status = 1) THEN 'confirmed'

WHEN (o.Status = 3) THEN 'in production'

WHEN (o.Status = 4) THEN 'ready'

WHEN (o.Status = 5) THEN 'shipped'

ELSE 'unknown status ''' || o.Status || ''''

END

FROM Orders o;

 

12.   IIF (<search_condition>, <value1>, <value2>)

说明:表达式为真,返回value1否则返回value2

等价于以下语句:

CASE

WHEN <search_condition> THEN <value1>

ELSE <value2>

END

 

13.   NULLIF(V1,V2)

说明:如果V1=V2,返回NULL,否则返回V1

等价于以下语句:

CASE WHEN V1 = V2 THEN NULL ELSE V1 END

举例

UPDATE PRODUCTS

SET STOCK = NULLIF(STOCK,0)

 

14.   COALESCE(V1, V2, …, Vn)

说明:如果V1Null,返回V2,否则返回V1,

如果 n >= 3, 等于如下case语句:

CASE

 WHEN V1 IS NOT NULL THEN V1

ELSE COALESCE (V2,...,Vn)

END

 

举例

SELECT

PROJ_NAME AS Projectname,

COALESCE(e.FULL_NAME,'[< not assigned >]') AS Employeename

FROM

PROJECT p

LEFT JOIN EMPLOYEE e

ON (e.EMP_NO = p.TEAM_LEADER);

 

SELECT

COALESCE(Phone,MobilePhone,'Unknown') AS "Phonenumber"

FROM Relations;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值