Sybase字符串函数
Sybase15新增加函数 str_replace
用法:str_replace(string要被替换的字符串, string用于替换的字符串,string替换成的字符串)
示例:如把 cs_dl表 ly_bd字段中的换行符去掉
select str_replace(ly_bd,char(10),'') as ly_bd from cs_dl
注意:str_replace("sss//sdfdf/gdf","/","")输出的串中会有空格,""的长度在一般语言中都是0,但在 sybase中是1,所以用""替换掉/后,输出串中会以一个空格替换。若要实现去除"/"的目的,需用null来换掉""。
长度和语法分析
datalength(char_expr)
在char_expr中返回字符的长度值,忽略尾空
substring(expression,start,length)
返回部分字符串
right(char_expr,int_expr)
返回char_expr右边的int_expr字符
基本字符串运算
upper(char_expr)
把char_expr转换成大写形式
lower(char_expr)
把char_expr转换成小写形式
space(int_expr)
生成有int_expr个空格的字符串
replicate(char_expr,int_expr)
重复char_expr,int_expr次
stuff(expr1,start,length,expr2)
用expr2代替epxr1中start起始长为length的字符串
reverse(char_expr)
反写char_expr中的文本
ltrim(char_expr)
删除头空
rtrim(char_expr)
删除尾空
格式转换
ascii(char_expr)
返回char_expr中第一个字符的ASCII值
char(int_expr)
把ASCII码转换为字符
str(float_expr[,length[,decimal]])
进行数值型到字符型转换
soundex(char_expr)
返回char_expr的soundex值
difference(char_expr1,char_expr2)
返回表达式soundex值之差
串内搜索
charindex(char_expr,expression)
返回指定char_expr的开始位置,否则为0
patindex("%pattern%",expression)
返回指定样式的开始位置,否则为0
datalength用于确定可变字符串的长度
soundex用于确定字符串是否发音相似
difference返回0-4之间的值,0表示最不相似,4表示最相似
通配符
% 匹配任何数量的字符或无字符
_ 匹配任何单个字符(空间占位符)
[] 规定有效范围,或某个"OR"条件
[ABG] A,B,G
[A-C] A,B,C
[A-CE-G] A,B,C,E,F,G
[^ABG] 除了A,B,G
[^A-C] 除了A,B,C
escape子句
用某个转义字符可在搜索字符串时将通配符作为文字来包含。
ANSI-89 SQL标准定义了escape子句指定某个转义字符
缺省情况下,[]来转义某个通配符,例:
select * from test_tab
where description like "%20[%]%"
语法:
like char_expression escape escape_character
例
select * from test_tab
where description like "%20#%%" escape "#"
+ 可用于串接字符
select au_laname+","+au_fname from authors
数学函数
abs(numeric_expr)
返回指定值的绝对值
ceiling(numeric_expr)
返回大于或等于指定值的最小整数
exp(float_expr)
给出指定值的指数值
floor(numeric_expr)
返回小于或等于指定值的最大整数
pi()
返回常数3.1415926
power(numeric_expr,power)
返回numeric_expr的值给power的幂
rand([int_expr])
返回0-1之间的随机浮点数,可指定基值
round(numeric_expr,int_expr)
把数值表达式圆整到int_expr指定的精度
sign(int_expr)
返回正+1,零0或负-1
sqrt(float_expr)
返回指定值的平方根
SQL SERVER支持所有标准的三角函数和其他有用的函数
日期函数
getdate()
返回当前的系统日期和时间
datename(datepart,date_expr)
以字符串形式返回date_expr指定部分的值,转换成合适的名字
datepart(datepart,date_expr)
作为整数返回date_expr值的指定部分
datediff(datepart,date_expr1,date_expr2)
返回date_expr2-date_expr1,通过指定的datepart度量
dateadd(datepart,number,date_expr)
返回日期,通过在date_expr上增加指定number的日期部件而产生的
datepart
日期部件 缩写 值范围
年 yy 1753-9999
季度 qq 1-4
月 mm 1-12
每年中的天 dy 1-366
天 dd 1-31
星期 wk 1-54
星期天 dw 1-7(1=sunday)
小时 hh 0-23
分钟 mi 0-59
秒 ss 0-59
毫秒 ms 0-999
例:
select invoice_no,
datediff(dd,date_shipped,getdate())
from invoices
where balance_due>0
转换函数convert
此函数把值从一种类型改变成另一种类型
convert(datetype [(length)],expression)
select "Advance="+convert(char(12),advance)
from titles
日期转换
convert(datetype[(length)],expression,format)
format指定将日期转换为什么格式,有以下值:
没有世纪 有世纪 转换字符串中日期格式
0 or 100 mon dd yyy hh:miAM(or PM)
1 101 mm/dd/yy
2 102 yy.mm.dd
3 103 dd/mm/yy
4 104 dd.mm.yy
5 105 dd-mm-yy
6 106 dd mon yy
7 107 mon dd,yy
8 108 hh:mm:ss
9 or 109 mon dd,yyyy hh:mi:ss:mmmAM(or PM)
10 110 mm-dd-yy
11 111 yy/mm/dd
12 112 yymmdd
系统函数
函数 定义
访问和安全性信息
host_id() 客户进程的当前主机进程ID号
host_name() 客户进程的当前主计算机名
suser_id(["login_name"]) 用户的SQL Server ID号
suser_name([server_user_id]) 用户的SQL Server登录名
user_id(["name_in_db"]) 用户在数据库中的ID号
user_name([user_id]) 用户在数据库中的名字
user 用户在数据库中的名字
show_role() 用户的当前活动角色
数据库和对象信息
db_id(["db_name"]) 数据库ID号
db_name([db_id]) 数据库名
object_id("objname") 数据库对象ID号
object_name(obj_id]) 数据库对象号
col_name(obj_id,col_id) 对象的栏名
col_length("objname","colname") 栏的长度
index_col("objname",index_id,key#) 已索引的栏名
valid_name(char_expr) 若char_expr不是有效标识符,则返回0
数据函数
datalength(expression) 按字节返回expression的长度
tsequal(timestamp1,timestamp2) 比较时戳值,若时戳值不匹配,则返回出错消息
isnull()
isnull函数用指定的值代替查询栏或合计中的空值
例:
select avg(isnull(total_order,$0))
from invoices
相关推荐
### Sybase函数大全知识点概述 Sybase是一种广泛应用于企业级数据管理领域的数据库系统,尤其以其高性能和稳定性著称。为了更好地进行Sybase相关的开发工作,掌握Sybase中的各种函数是必不可少的技能之一。本文将...
本资源“sybase函数大全”是一个详尽的参考手册,为Sybase数据库开发人员提供全面的函数使用指南。以下是一些重要的Sybase函数类别及其应用: 1. **算术函数**:这类函数用于执行基本的数学运算,如`ABS()`返回...
在不同的数据类型之间进行转换也是Sybase函数的重要功能之一,常用转换函数有: - `CAST()`和`CONVERT()`用于将一种数据类型转换为另一种数据类型。 ### 实例说明 假设我们需要统计某表中所有记录的创建日期是否...
Sybase是一种关系型数据库管理系统,其函数库在软件开发中被广泛使用,特别是对于处理SQL查询和管理数据库连接。在Sybase中,有一些核心的函数用于与数据库进行交互,这些函数与SQL Server数据库函数库非常相似,...
《Sybase参考手册-函数》是为Sybase Adaptive Server Enterprise(ASE)数据库管理系统提供的一份重要参考资料,适用于ASE的所有后续版本。ASE是一款高效、可扩展的企业级数据库解决方案,广泛应用于金融、电信、...
2. **Sybase函数**: 函数是预定义的程序,可以接受一个或多个参数并返回结果。在Sybase中,有各种内置函数,如数学函数(如`SQRT`,`POWER`),字符串函数(如`SUBSTRING`,`CONCAT`),日期/时间函数(如`DATEADD...
Sybase是一种先进的关系型数据库管理系统,广泛应用于企业级的数据存储和管理。本手册包含了关于Sybase的详尽信息,特别是针对ESQL(Embedded SQL)的开发以及系统表和过程的使用。以下是根据提供的文件名解析出的...
Oracle、SQLServer、Symfoware、DB2、SYBASE数据库对比语法及函数
以下是一些重要的Sybase函数及其用途: #### 1. 数据类型转换函数 - `CAST()`:将一个表达式的值转换为指定的数据类型。 - `CONVERT()`:用于数据类型的转换,可以转换日期和时间格式。 #### 2. 数学函数 - `ABS()...
描述中提到的“sybase函数、基础知识、安装和维护知识”则进一步细化了我们需要探讨的内容,包括Sybase SQL函数的使用、数据库的基础概念、安装步骤以及维护策略。 首先,Sybase是一个企业级的关系型数据库管理系统...
- **sybase函数大全.pdf**:这是一份全面的Sybase ASE函数参考,包含了所有内置函数的用法和示例,对于编写SQL查询非常有价值。 - **sqlug_ZH.pdf**:SQL用户指南的中文版,提供了关于SQL语法、查询构造和数据库管理...
以下是对Sybase ASA中查询元信息的几个常用SQL函数的详细介绍: 1. **`sp_columns`**:此函数用于检索指定表中的列信息,包括列名、数据类型、最大长度等。例如,`sp_columns 'account'`将显示表`account`的所有列...
根据给定文件的信息,我们可以总结出Sybase数据库中与日期处理相关的多个实用函数及应用场景,以下将对这些函数进行详细解读: ### Sybase日期函数大全 #### 1. `GETDATE()` - **功能**: 获取当前系统日期和时间。...
根据给定文件的信息,我们可以总结出Sybase数据库中与日期时间相关的函数及其用法。Sybase是一种关系型数据库管理系统,广泛应用于企业级应用开发。在Sybase中,处理日期和时间是非常重要的,尤其是在进行数据分析、...
Sybase IQ作为按列存储的异构型数据库,查询性能高。在数据挖掘方面,仍有很大优势。作为数据库应用,函数使用需要熟悉。
在Sybase数据库系统中,日期和时间的处理是数据库操作中的常见任务,这涉及到一系列的日期函数。本文将深入解析Sybase的四个主要日期函数及其应用。 1. **getdate()** 函数: - `getdate()` 用于获取当前系统时间...