/**
sybase本来就没有dual表,为了方便,你可以建一个dual表。
create table dual (data char(1))
go
insert into dual select 'x '
go
你可以象oracle里面一样使用该表了。
*/
select datalength('chenwei'),-- 字符串的长度
substring('chenwei',1,2) ,-- 截取字符串:从第一个开始截取2个字符
right('chenwei',2), -- 右边两个字符
upper('CHENwei'), -- 取字符的大写
lower('CHENWEI'), -- 取字符的小写
replicate('猪',5),-- 字符重复次数
space(10),-- 生成10个空格
reverse("chenwei"), -- 字符顺序相反
ltrim(" chenwei "), -- 去左边空格
rtrim(" chenwei "),-- 去右边空格
ascii('b'), -- 转换一个字符的ASCII码
char(99), -- 转换一个ASCII码为字符
soundex('v'),
'0','0'
go
select difference('chenwei','wei'),
charindex('chenwei','chenwei'),
getdate(),
datename(mm,getdate()), -- 日期各个部分的名称
dateadd(mm,-2,getdate()), -- 日期各个部分的增加
datediff(mm,getdate(),dateadd(mm,-2,getdate())), -- 日期各个部分的比较
/**
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
*/
convert(char,getdate(),109),
/**
序号 格式代号 转换字符串中日期格式
0 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
*/
'0'
go
select
isnull(null,'a'), --相当于oracle的 nvl
host_id(), --主机进程
host_name(),-- 主机名称
'0'