Sql 在Sybase中将Datetime截断为秒(删除毫秒)

Sql 在Sybase中将Datetime截断为秒(删除毫秒),sql,perl,sybase,Sql,Perl,Sybase,从Perl脚本执行以下查询时,datetime输出显示为 mon dd yyyy hh:mm:ss:nnn 我需要从datetime截断毫秒: mmm dd yyyy 12:00:00:000AM 该字段在数据库中正确显示,只有当从脚本运行并将结果重定向到文本文件时,我才面临这个问题。 如何使脚本不显示毫秒?我需要保留上午/下午 有人能帮忙解决这个问题吗 查询: select fieldA, fieldB, fieldC, xyzDate from tableT where xyzDate

从Perl脚本执行以下查询时,datetime输出显示为

mon dd yyyy hh:mm:ss:nnn
我需要从datetime截断毫秒:

mmm  dd yyyy 12:00:00:000AM
该字段在数据库中正确显示,只有当从脚本运行并将结果重定向到文本文件时,我才面临这个问题。 如何使脚本不显示毫秒?我需要保留上午/下午

有人能帮忙解决这个问题吗

查询:

select fieldA, fieldB, fieldC, xyzDate from tableT where xyzDate = '@abcDate'
输出:

|||47.1000000000|Nov  4 2014 12:00:00**:000**AM|USD|US|CPS EOD

感谢您的帮助。

请务必保留
AM/PM
部分,并且没有任何方法对其进行测试,但请使用
DATETIME
功能尝试一次

declare @dt datetime;
set @dt = 'mmm dd yyyy 12:00:00:123AM';

select dateadd(millisecond, -datepart(millisecond, @dt), @dt);

谢谢拉胡尔。查询正在按预期工作。但是当从Perl脚本执行相同的操作时,datetime输出仍然显示为mon-dd-yyyy-hh:mm:ss:nnn@RamyaSR,我不确定。仅因为它与SQL相关而进行了回答。您可能希望将其作为带有
Perl
标记的单独问题发布,以获得具体答案。问题可能出在
Perl
DBD/DBI模块上,但不能确定。如果有帮助,请接受答案。如果您阅读了问题,OP会说“只有在从脚本运行并将结果重定向到文本文件时,[字段]在数据库中正确显示,我才面临此问题”。OP对你的解决方案的评论表明,你的建议没有任何区别。OPs帖子建议,如果他真的尝试过,这将是一个解决方案it@Borodin,然后才作出评论;去检查问题编辑历史记录。然后你可能会填写以删除上面的评论。是的,这是冒号而不是句号。perl脚本没有反映日期时间格式。请编辑您的问题,以包含执行查询并打印结果的perl代码。还请包括您从Perl脚本获得的确切输出。还要注意,由于您已经接受了答案,人们可能会认为您的问题已经解决,可能不会引起太多关注。@此SuiteisBlack未根据建议进行编辑。仅显示查询是不够的……我们还需要查看执行查询并打印结果的Perl代码。请参阅以查看我们需要帮助您的信息类型。