【问题标题】:COUNT() function is not working for ID's in oracle ? Checked all themes in the sites ,no one works for me [closed]COUNT() 函数不适用于 oracle 中的 ID?检查了网站中的所有主题,没有人适合我[关闭]
【发布时间】:2019-06-02 12:37:08
【问题描述】:
SELECT *
FROM  (SELECT Count(q.test_disciplina_id)"|BROI|",
              p.predmet                  "|Predmet|",
              t.naimenovanie_test        "|TEST|",
              data
       FROM   qvqvaniq_na_test q
              inner join test_disciplina td
                      ON ( q.test_disciplina_id = td.id_disciplina_test )
              inner join test t
                      ON ( td.test_id_test = t.id_test )
              inner join disciplina d
                      ON ( td.disciplina_id_disciplina = d.id_disciplina )
              inner join predmeti p
                      ON ( d.predmeti_id_predmet = p.id_predmet )
       GROUP  BY predmet,
                 naimenovanie_test,
                 data)
WHERE  To_date(data) BETWEEN To_date('2018-01-01') AND To_date('2019-10-10');  

【问题讨论】:

  • 你想要什么结果?你的问题非常令人困惑。你说你有“一个表”,然后你有一个引用几个表的查询。您的结果集中的列不在您的示例数据中。
  • 没有示例数据、预期结果以及预期结果与实际结果有何不同的示例,任何人都无法确定您要完成的工作。请使用标签下方的edit 按钮编辑您的问题,包括每个表格的示例数据、您获得的结果以及您期望的结果。谢谢。

标签: sql oracle function count


【解决方案1】:

从头开始

select count(q.test_disciplina_id) 
from qvqvaniq_na_test q 

并确保查询返回一些内容。然后添加另一个表;测试等等。如果您在任何这些步骤中都没有得到预期的结果,请在修复错误之前不要继续进行。

您编写的查询看起来不错。几乎没有任何信息,很难猜测可能是什么问题;这里有几种可能性:

  • 你应该使用外连接
  • 为什么要使用内联视图?我看不出任何理由。删除它,并将WHERE 子句放在它所属的位置
  • WHERE 子句应该重写。目前是

    WHERE To_date(data) BETWEEN To_date('2018-01-01') AND To_date('2019-10-10');  
    
    • DATA 的数据类型是什么?如果是字符串 TO_DATE 应该有适当的格式掩码,例如to_date(data, 'yyyy-mm-dd')。如果是日期,则完全删除 TO_DATE
    • to_date('2018-01-01') 也缺少格式掩码。不要依赖Oracle的隐式转换,它迟早会失败。要么应用格式掩码(如前所述),例如to_date('2018-01-01', 'yyyy-mm-dd') 或使用日期文字,date '2018-01-01'

    已修复,可能看起来像

    where to_date(data, 'yyyy-mm-dd') between date '2018-01-01' and date '2019-10-10'
    

现在,轮到你了。

【讨论】:

  • 成功了,谢谢,改变我的计数函数和写数据格式解决了我的问题
猜你喜欢
  • 2021-08-25
  • 1970-01-01
  • 2012-08-09
  • 2013-11-27
  • 1970-01-01
  • 2018-04-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多