sql - COGNOS:在 Cognos 中将 SQL 日期提示转换为日期提示
问题描述
我目前在 Cognos 中转换 SQL 日期提示时遇到问题。我想在 Cognos Report Studio 10.2 中重建一个 SQL 查询。
在我的 SQL 查询中,我实现了两个提示。第一个:
SQL: where :date between DATE1 and DATE2
我可以在 Cognos 中使用以下函数来解决这个问题:
认知:
where TO_DATE (#sq(prompt ( 'date_prompt', 'date' ))#, 'YYYY-MM-DD') between DATE1 and DATE2
但现在我遇到了以下提示问题,我必须将 der 日期转换为 char,然后再转换为数字:
SQL:
where PART in (299912, to_number(to_char(:date, 'YYYYMM')))
我尝试了以下功能:
认知:
where PART in (299912, to_number(to_char(TO_DATE (#sq(prompt ( 'date_prompt', 'date' ))#, 'YYYYMM'))))
但我得到以下错误:
UDA-SQL-0107 “打开结果”操作期间出现一般异常错误。
ORA-01843 没有有效月份
解决方案
由于您已经在使用宏,只需让它完成工作。
#
timestampmask(prompt('StartDate','timestamp'),'YYYYMM')
#
推荐阅读
- javascript - 如何用您自己的文本更改选择框文本
- javascript - 脚本不显示新记录,它只是继续显示相同的记录
- ssis - SSIS 阻止从已存在于 SQL Server 表中的平面文件中插入数据行
- dart - Flutter 如何播放 youtube 播放列表视频?
- android - 在包含 RecyclerView 的 Activity 中加载片段
- mysql - 返回日期时间列介于用户输入的日期、小时和小步舞曲之间的数据
- c# - Unity3D NavMeshAgent
- javascript - 如何使用javascript每隔一分钟加载不同的页面?
- java - 从字符串中选择特殊单词
- java - 使用 Optional.of() 方法进行方法链接是个好主意吗?