Sybase ASE15.0.3中用SQL Function来调整日期显示格式

Sybase ASE自15.0.2后增加了用户自定义函数的功能。

在Sybase中,以 2010-10-18 12:30:01格式显示日期数据时,用convert函数不能实现,需要替换一下字符。

select convert(varchar,getdate(),117)
go

 ------------------------------
 2010/10/18 20:51:10

(1 row affected)

利用函数str_replace替换上面返回的日期字符串中的/为-

str_replace(convert(char(19),getdate(),117),'/','-')

1> select str_replace(convert(char(19),getdate(),117),'/','-')
2> go

 -------------------
 2010-10-18 20:53:13

(1 row affected)

 

利用ASE15.0.2开始增加的用户自定义函数功能,创建一个SQLFunction。

create function datefmt_lzf(@d datetime)
returns char(19)
as
  return str_replace(convert(char(19),@d,117),'/','-')
go

 

函数的用法:

1> select dbo.datefmt_lzf(getdate())
2> go

 -------------------
 2010-10-18 20:55:46

(1 row affected)
1> select dbo.datefmt_lzf(convert(datetime,'Oct 18 2010 20:56:45'))
2> go

 -------------------
 2010-10-18 20:56:45

(1 row affected)
1>

注意函数名前要加上所属用户名。

  • 本文链接地址:http://www.sybrepair.com/sybase-ase15-0-3-sql-function-convert_datetime-format.htm
  • 本文为dbainfo个人原创,请在尊重作者劳动成果的前提下进行转载;
  • 转载务必注明原始出处 : Sybase数据库技术,数据库恢复专家
  • 对《Sybase ASE15.0.3中用SQL Function来调整日期显示格式》有何疑问或见解,请在本文下方发表;
  • 对网站还有其他问题或建议,请提交在留言板,谢谢!
  • 目前还没有任何评论.
    :wink: :twisted: :roll: :oops: :mrgreen: :lol: :idea: :evil: :cry: :arrow: :?: :-| :-x :-o :-P :-D :-? :) :( :!: 8-O 8)