我有一个把电脑扔出窗外的日子。
我正在处理一个涉及 Crystal Reports(版本 10)和 Oracle 数据库(11g)的问题。
我从数据库中获取一个返回字符串 (varcahr2(50)) 的视图,该字符串实际上是一个数字,当在此视图上运行基本的 SELECT * 查询时,我以 000000000000100.00 的格式返回数字。
然后在 Crystal Reports 中使用此视图时,我可以查看字段数据,但我无法汇总数据,因为它不是数字。
我开始尝试在该字段上使用 ToNumber,Crystal 的回应是该字符串不是数字文本。好吧,公平地说,我回到视图并运行 TO_NUMBER,然后在水晶中使用它时它没有返回任何结果。我还尝试在视图上运行 TO_CHAR,以便希望将字段作为文本导入,然后执行 ToNumber,但与 TO_NUMBER 相同,没有显示任何记录。
我已经开始了新的报告,我已经开始了新的观点。徒劳无功。
这似乎与我如何检索视图数据有关。
简单来说,我从表中提取数据,查看两个字段:外键和值字段。
SELECT PRIMARY_KEY,
NVL(MAX(DECODE(FOREIGN_KEY, FOREIGN_KEY_OF_VALUE_I_NEED, VALUE_FIELD)), 0)
FROM MY_TABLE
GROUP BY PRIMARY_KEY
当我尝试使用 TO_NUMBER 或 TO_CHAR 修改结果时,我在 VALUE_FIELD 本身和整个表达式周围使用了它,当在 SQL 语句中运行时,凋谢方式有效。但是,当使用视图时,对语句的任何 TO_NUMBER 或 TO_CHAR 修改都不会在 Crystal Reports 中返回任何结果。
整个问题有点像我忽略的勾选框或等效项。
任何有关如何解决此问题或我可以去哪里寻找答案的建议将不胜感激。