nvalid Number查询错误

时间:2017-10-04 16:44:47

标签: sql oracle

我有这个Oracle查询,它使用两个子查询来获取特定日期的项目数。

$s = simplexml_load_file('data.xml');

var_dump($s->versions);

这里的两个子查询是count_units和count_available_units。重要的是我按to_char([date],[date format])进行分组,否则它将按日期和时间分组,而不仅仅是日期。当我按 SELECT to_char(u.expiration_date,'DD/MM/YYYY') expiration_date ,(SELECT SUM(u.base_quantity) FROM unit u ,item i WHERE i.item_id = u.item_id AND (i.item_code = 50002844 OR i.item_id = 50002844) AND to_char(u.expiration_date,'DD/MM/YYYY') = count_units.expiration_date) AS quantity ,count_units.unit_count ,count_available_units.available_unit_count FROM unit u ,(SELECT to_char(u.expiration_date,'DD/MM/YYYY') AS expiration_date ,COUNT(*) AS unit_count FROM unit u ,item i WHERE (u.item_id = 50002844 OR i.item_code = 50002844) AND u.item_id = i.item_id AND u.base_quantity > 0 GROUP BY to_char(u.expiration_date,'DD/MM/YYYY')) count_units ,(SELECT to_char(u.expiration_date,'DD/MM/YYYY') AS expiration_date ,COUNT(*) AS available_unit_count FROM unit u ,item i WHERE (u.item_id = 50002844 OR i.item_code = 50002844) AND u.item_id = i.item_id AND u.status_id = 10 AND u.base_quantity > 0 GROUP BY to_char(u.expiration_date,'DD/MM/YYYY')) count_available_units WHERE count_units.expiration_date = to_char(u.expiration_date,'DD/MM/YYYY') AND count_available_units.expiration_date = to_char(u.expiration_date,'DD/MM/YYYY') 分组时,查询返回结果,但现在运行时我收到“无效数字”错误。

我的问题是为什么我收到此错误?我在查询中没有看到任何地方尝试将char转换为数字,反之亦然。

此外,这两个子查询本身返回时没有错误,所以它必须是我要查询的一些标准。

任何想法都表示赞赏。感谢

0 个答案:

没有答案