长度和语法分析
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转换成小写形式
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码转换为字符, 和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)
返回大于或等于指定值的最小整数
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值的指定部分 和datename对应
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
数据函数
tsequal(timestamp1,timestamp2) 比较时戳值,若时戳值不匹配,则返回出错消息
isnull()
isnull函数用指定的值代替查询栏或合计中的空值
分享到:
相关推荐
在Sybase数据库系统中,日期和时间的处理是数据库操作中的常见任务,这涉及到一系列的日期函数。本文将深入解析Sybase的四个主要日期函数及其应用。 1. **getdate()** 函数: - `getdate()` 用于获取当前系统时间...
### Sybase SQL语法和函数使用教程知识点概览 #### 一、Sybase SQL简介 Sybase SQL是一种标准化的关系型数据库管理系统(RDBMS),由Sybase公司开发并维护。它支持Transact-SQL语言,这是一种用于管理关系型数据库的...
- **使用SQLAnywhere方言创建用户定义的函数**:虽然Sybase IQ主要支持标准SQL,但也可以使用SQLAnywhere方言来创建UDFs。 - **在Sybase Central中声明用户定义的函数**:Sybase Central是Sybase IQ提供的图形化管理...
尽管Sybase IQ支持大多数标准SQL数据类型,但也有部分类型是不被支持的,例如: - 自定义类型:不支持用户自定义的复杂数据类型。 - 特殊类型:例如,某些特殊的地理空间数据类型可能不受支持。 #### 构建UDF 构建...
2. **odbc**:ODBC(Open Database Connectivity)是微软提供的一个标准API,用于让应用程序能通过ODBC驱动程序连接到各种数据库,包括Sybase。这里可能包含了Sybase的ODBC驱动程序和其他相关配置文件。 3. **...
通过调用ODBC函数,如SQLConnect和SQLExecute,可以实现与Sybase ASE数据库的连接和查询。 **6. 性能优化** 为了提高性能,ODBC驱动提供了多种优化选项,如预编译的SQL语句、批量执行、连接池等。根据应用需求,...
《Sybase IQ数据库函数详解》 Sybase IQ是一款高性能、面向数据分析的数据库管理系统,广泛应用于互联网行业的大数据处理。本文将对Sybase IQ中的数据库创建、数据类型以及关键函数进行详细解析。 首先,我们来看...
2. **SQL语法**:ASE支持标准SQL语句,包括SELECT、INSERT、UPDATE、DELETE等用于查询和操作数据的基本命令。 3. **事务处理**:ASE支持ACID(原子性、一致性、隔离性和持久性)事务,确保数据的完整性和一致性。 ...
SYBASE ODBC驱动是Sybase Adaptive Server Enterprise (ASE)数据库系统与应用程序之间的重要桥梁,它允许通过开放数据库连接(ODBC)标准来访问和操作Sybase数据库。在15.5版本中,这个驱动程序经过优化和增强,提供...
4. **丰富的SQL支持**:ASE完全兼容SQL标准,并提供了大量的扩展函数和过程,如用户定义函数(UDF)、存储过程和触发器,使得数据操作更加灵活和强大。 5. **集成的安全模型**:ASE提供了细粒度的访问控制和权限...
在本例中,它是为Sybase ASE 12.5定制的,意味着它实现了与该数据库服务器交互所需的特定协议和函数调用。 在实际应用中,配置Sybase ASE 12.5 ODBC驱动通常包括以下步骤: 1. 安装驱动:将`Sybase_ODBC12.5.jar`...
Sybase 11 ODBC是Sybase数据库管理系统的一个版本,它提供了一个Open Database Connectivity (ODBC) 驱动程序,使得应用程序能够通过标准接口访问Sybase数据库。ODBC是微软公司开发的一种数据库访问标准,它允许不同...
1. **ODBC驱动程序**:这是关键组件,它实现了ODBC标准,允许应用程序与特定的数据库系统通信。对于Sybase,我们需要一个Sybase ODBC驱动程序,该驱动程序理解Sybase数据库的语法和协议,并能将SQL语句转化为Sybase...
1. **数据模型** - 详细阐述了Sybase ASE如何支持SQL标准的数据类型、表结构和索引,以及如何设计高效的数据模型。 2. **存储引擎** - 解析了Sybase ASE的物理存储机制,如数据页、索引页、事务日志等,以及如何...
- 这个函数使用了 ICU(International Components for Unicode)库而非之前的 Sybase Unicode Infrastructure Library (Unilib)。因此,使用 SAP Sybase IQ 15 之前的版本创建的排序键值可能不兼容新版本创建的排序...
T-SQL是SQL的方言,它在标准SQL的基础上添加了许多功能,使得数据库管理和编程更加灵活。以下是一些T-SQL的关键知识点: 1. **数据定义语言(DDL)**: 包括CREATE, ALTER, DROP等语句,用于创建、修改和删除数据库...
ODBC驱动包含一组动态链接库(DLL),这些库实现了ODBC API,使得应用程序可以调用标准的ODBC函数来执行SQL查询、管理连接和事务等操作。 **32位系统的限制** 值得注意的是,这个安装版只适用于32位操作系统。在64...
4.3 Transact-SQL扩展:Sybase对标准SQL的扩展,如动态SQL、游标、事务控制等。 五、备份与恢复 5.1 备份策略:讨论全量备份、增量备份和差异备份的适用场景,以及如何制定合理的备份计划。 5.2 恢复技术:解释...
- **基本语法**: Sybase T-SQL遵循标准SQL语法,但在某些方面有所扩展和改进。 - **数据类型**: 包括数值类型(如int、decimal)、字符串类型(如char、varchar)、日期时间类型等。 - **变量与常量**: 变量声明、...
3. **函数和存储过程**:这部分内容也暗示了Sybase Transact-SQL支持自定义函数和存储过程的创建,这些可以封装复杂的业务逻辑,提高代码的复用性和执行效率。 4. **索引和查询优化**:通过使用适当的索引策略和...