替换不使用日期转换

时间:2017-01-12 16:55:04

标签: sql sybase

我有以下查询:

select distinct 
min(Id),  
Name,
Age,
replace(CONVERT(VARCHAR(24),birthday,113),' ','-') as "Birthday"
from #temp_table
group by name, age

在关键字replace"附近返回一个模糊错误"语法不正确如果我删除替换部分它可以工作但返回我不想要的日期格式。我需要以dd-mmm-yy格式转换日期。输入为mm / dd / yyyy。如果重要,请在Sybase中执行此操作。

1 个答案:

答案 0 :(得分:0)

如果您使用的是ASE而不是IQ,那么以下丑陋的野兽应该可以使用:

  

...   str_replace(str_replace(CONVERT(VARCHAR(24),birthday,106),substring(birthday,7,5),' - ' + substring(birthday,10,2)),'& #39;,' - ')   ...

不幸的是,根据Sybase标准,这是一个非常不寻常的日期格式,您正在寻找。