Sql server PeopleSoft查询管理器表达式

Sql server PeopleSoft查询管理器表达式,sql-server,peoplesoft,Sql Server,Peoplesoft,使用Microsoft SQL Server,我试图将A.CHECK_DT格式化为mmddyyyy-带前导零,因此今年的1月11日看起来是:01112019。 问题是我尝试的每件事都不成功。我最接近改变格式的是: CONCAT(月)(转换(字符(10),A.CHECK-DT,101)),天(转换(字符(10),A.CHECK-DT,101)),年(转换(字符(10),A.CHECK-DT,101))) 但这将日期转换为1182019,没有前导零。有人有什么想法吗?[p>[edit]下面的评论适用

使用Microsoft SQL Server,我试图将A.CHECK_DT格式化为mmddyyyy-带前导零,因此今年的1月11日看起来是:01112019。 问题是我尝试的每件事都不成功。我最接近改变格式的是:

CONCAT(月)(转换(字符(10),A.CHECK-DT,101)),天(转换(字符(10),A.CHECK-DT,101)),年(转换(字符(10),A.CHECK-DT,101)))


但这将日期转换为1182019,没有前导零。有人有什么想法吗?

[p>[edit]下面的评论适用于Oracle数据库,但事实证明这个问题是针对Microsoft SQL Server的。我将保留答案,以防对通过搜索找到此问题的其他人有用

假设您在oracle上,请尝试在
TO_CHAR
函数,告诉它如何格式化输出

您可以使用
TO_CHAR
格式化日期。语法类似于
到字符(您的日期,您的格式)
。对于你的具体例子,它 将是
到\u CHAR(A.CHECK\u DT,'MMDDYYYY')

以下是将此SQL显示为工作查询的网页:

以下是我通过搜索找到的一些好资源:
Oracle
到字符

当然,总是有Oracle文档(尽管它倾向于 要减少示例,请执行以下操作:

我想出来了:

此脚本将为您提供MMDDYYYY格式

替换(转换(VARCHAR(10),转换(A.检查日期),101),“/”,“”)


(Expression Type=Character,长度10)

感谢您的评论-该特定代码不起作用,我收到了以下错误:发生了SQL错误。有关详细信息,请查阅您的系统日志。运行查询时出错,因为SQL错误,代码=8603,消息=[Microsoft][ODBC Driver 13 for SQL Server][SQL Server]直接执行SQL;没有光标。[Microsoft][ODBC Driver 13 for SQL Server][SQL Server]“TO_CHAR”不是可识别的内置函数名。[Microsoft][ODBC Driver 13 for SQL Server][SQL Server]Sta(50380)啊,您没有指定您使用的是哪种数据库。我的解决方案是针对Oracle。如果您使用的是Microsoft SQL Server,则情况会有所不同。我将把这个标签添加到问题中。很抱歉,直到昨天晚些时候我才意识到它是一个什么样的数据库。我认为澄清这是PeopleSoft查询管理器是有帮助的,但事实并非如此。我的同事不得不告诉我有关SQL server的情况,然后我做了研究,并找到了答案。更多详细信息(我通过找到)。那里的解决方案似乎与您自己的相匹配。谢谢-我会尽我所能。