我有这个 Oracle SQL 查询,我用它来将组件计数到表中:
select ct.name as component_type, count(1) as cnt from componentstats cs, componenttype ct
WHERE CS.COMPONENTTYPEID = CT.COMPONENTTYPEID AND CT.COMPONENTTYPEID IN (1000, 1300, 4000)
group by ct.name order by ct.name;
这是输出:
COMPONENT_TYPE CNT
---------------------------------------------------------------------------------------------------- ----------------------
DATACENTER 1
ISP 1
NETWORK 1
我注意到,如果没有类型为 1300 的组件,我会得到两个值 1 和 1。我需要得到结果 1、0、1,因为数字的顺序必须严格。你能告诉我如何解决这个问题吗?