需要一些关于此查询的帮助。到目前为止,我已经根据前几天的数据返回了一个计数。
我现在最终要做的是创建一个查询,它基本上告诉我count(*)= Xn值,然后查询是有效的,否则没有数据集。
如果没有结果,那就好了。
这是我的疑问:
SQL> select count(*) from in_source where to_date(year||'/'||month||'/'||day, 'YYYY/MM/DD') >= trunc(sysdate) - 1;
COUNT(*)
----------
500
因此,基本上如果count(*)= 500,则此查询为1(false)或0(无结果)。我认为这需要一个子查询?
有人可以帮我调整一下吗?谢谢。
答案 0 :(得分:1)
不确定这是否是您要找的,但我试一试:
select 1 from dual
where 500=(select count(*) from in_source
where to_date(year||'/'||month||'/'||day, 'YYYY/MM/DD') >= trunc(sysdate) - 1);
答案 1 :(得分:1)
不要真正理解你所追求的是什么,但希望其中一个能够奏效......
如果你想得到如果count(*)= 500则返回1,否则返回0然后试试这个:
select case when count(*) = 500 then 1 else 0 end result
from in_source
where to_date(year||'/'||month||'/'||day, 'YYYY/MM/DD') >= trunc(sysdate) - 1;
如果你试图获得if count(*)= 500然后返回1,否则不返回任何行试试这个:
select 1 result
from in_source
where to_date(year||'/'||month||'/'||day, 'YYYY/MM/DD') >= trunc(sysdate) - 1
having count(*) = 500;