长度和语法分析
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
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
发表评论
-
解决MySQL error 1036: table is read only
2011-05-05 22:37 1411改变数据库文件的宿主权限 sudo chown -R mysq ... -
VMware中去掉Linux报警声
2010-05-05 13:09 805将/etc/inputrc中的set bell-style n ... -
Ajax传递数据对加号变空格的处理
2010-01-26 15:11 3107采用Ajax传递数据时,通常会将数据整理为data=" ... -
MySQL 字符串函数大全
2009-12-18 17:29 1219DING | TRAILING] [remstr] FROM] ... -
json转为java的vo对象
2009-12-17 11:29 6485String str = "[{'name':'he ... -
Java 防SQL 注入函数
2009-12-09 16:34 899看了网上的几个版本,感觉比较别扭,为何不直接用replaceA ... -
Adobe Flex – JSON Schema Tree
2009-11-30 10:51 1774Last night I noticed now Zend I ... -
Spring启动异常
2009-11-29 22:53 0Spring启动异常: cvc-elt.1: Cannot f ... -
Class IOUtils
2009-11-26 09:03 1107public class IOUtilsextends jav ... -
org.apache.commons.io使用实例
2009-11-26 09:01 26861.文件内容拷贝: import java.io.File; ... -
Firefox 取 TextArea的值
2009-11-06 16:34 847用value代替innerHTML才取的到刚输入的值。 之前竟 ... -
Apache配置Weblogic
2009-10-28 09:21 1546LoadModule weblogic_module modu ... -
logic:itertae标签的使用
2009-10-20 00:37 703相关文章: Struts1.2.4 ... -
Struts多行提交
2009-10-19 16:38 1013ActionForm: public List checkRe ... -
ibatis批量Update
2009-10-19 16:33 2498public boolean updateCheckRus ...
相关推荐
Sybase系统函数是指由Sybase数据库自带的一系列预定义函数,它们能够执行特定的数据操作或系统任务,如字符串处理、数学计算、日期时间处理、转换类型等。熟练掌握这些函数,对于优化查询性能、简化编程工作以及提高...
#### 字符串函数 在Sybase数据库系统中,提供了丰富的字符串处理函数,这些函数可以极大地简化数据处理任务,并帮助开发者实现对字符数据的高效管理。 - **datalength(char_expr)**:此函数用于确定一个字符表达式...
2. **字符串函数**:涉及字符串的处理,如拼接、截取、查找、替换、转换大小写等,帮助开发者处理和操作文本数据。 3. **日期/时间函数**:处理日期和时间的函数,如获取当前日期、时间戳转换、日期加减、时间间隔...
2. **字符串函数**:字符串处理是数据库操作中的常见任务。`CONCAT()`用于连接两个或多个字符串,`SUBSTRING()`提取字符串的一部分,`LEN()`或`LENGTH()`计算字符串长度,`UPPER()`和`LOWER()`转换大小写,`REPLACE...
2. **字符串函数** - **长度(Length)**: `LENGTH(column)`返回字符串的长度。 - **子串(Substr)**: `SUBSTR(column, start, length)`提取字符串的一部分。 - **替换(Replace)**: `REPLACE(column, find_string, ...
这个函数主要用于替换字符串中的子串,但通过巧妙的应用,它也可以实现字符串的拼接。在上述示例中,`STUFF()`函数被用作多行字符串拼接的关键技术。 #### 示例解析 考虑以下SQL查询: ```sql SELECT Year, week1,...
这仅是Sybase IQ数据库功能的一小部分,实际上它还提供了丰富的聚合函数、字符串函数、数学函数、系统信息函数等,满足各种复杂的数据处理需求。 总的来说,掌握Sybase IQ的数据库管理和函数使用对于提升数据仓库的...
PowerBuilder是Sybase公司开发的一种面向对象的可视化编程工具,它有自己的语法和库,包括字符串处理函数。在PB中,我们可以使用多种方法来实现字符串长度的格式化。 1. **字符串截取**:PB提供了`Left`、`Right`和...
标题中的“Sybase函数大全”意味着本文将全面覆盖Sybase中的各类函数,包括但不限于数学函数、字符串处理函数、日期时间函数等;“让你的SQL语言更通顺”则表明通过熟练运用这些函数,可以使得SQL查询变得更加简洁...
此外,还可以通过字符串拼接的方式组合不同的日期时间格式: ```sql SELECT RTRIM(CONVERT(CHAR, GETDATE(), 102)) + '' + (CONVERT(CHAR, GETDATE(), 108)); -- 返回 '2003.11.1211:03:41' ``` ### 二、提取日期和...
在C#中,使用ADO.NET操作数据库时,你可以通过`SqlConnection`(SQL Server)、`OleDbConnection`(ODBC兼容数据库)或`OdbcConnection`(ODBC)类创建连接对象,并将连接字符串作为构造函数的参数传递。例如: ```...
日期和时间的字符串格式也有所说明,可以使用24小时制或12小时制,且可以包含秒和秒的小数部分。 函数部分,文档提到了三个特定的函数: 1. `RANK()`窗口化集合函数,它在分区(`PARTITION BY`)内按照指定的排序...
- 通过`CONVERT()`函数,可以将日期转换为各种格式的字符串。Sybase支持多种日期和时间的显示样式,如美国格式、欧洲格式等。例如,样式0表示美国短日期格式,样式11表示欧洲短日期格式,样式23则包含了ISO 8601...
- 内建的系统函数,如数学函数、字符串函数、日期/时间函数等 - 错误代码及其含义,这对于识别和解决数据库操作中的问题至关重要 - 使用系统函数进行数据处理和查询的示例 3. **系统表**: 系统表存储了关于...
### SQL函数大全——字符串函数详解 SQL作为一种标准的语言,在与各种数据库系统如MS Access、DB2、Informix、MS SQL Server、Oracle、MySQL、Sybase等进行交互时扮演着核心角色。本文旨在深入探讨SQL中的字符串...
字符串函数 - `UPPER()`:将字符串转换为大写。 - `LOWER()`:将字符串转换为小写。 - `REPLACE()`:替换字符串中的指定字符或子串。 - `LEFT()` 和 `RIGHT()`:从字符串的左边或右边提取指定数量的字符。 #### 4....
Sybase 提供了 `convert()` 函数将日期时间转换为不同格式的字符串。例如: ``` select convert(char, getdate(), 101) -- 'mm/dd/yyyy' 格式 select convert(char, getdate(), 112) -- 'yyyyMMdd' 格式 ``` 6...