首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

一个存储过程的写法解决办法

2012-03-09 
一个存储过程的写法select dev_type_id , count(dev_type_id) as num from dev_infowhere dev_state 0 g

一个存储过程的写法
select dev_type_id , count(dev_type_id) as num from dev_info where dev_state = 0 grouy by dev_type_id 

这个语句 可以出处 类型,和这个类型的数据行数

即 dev_type_id num
  1 2
  2 1
  3 20

但是 当num 的值为零时,结果集中不会显示

我要的结果是
  dev_type_id num
  1 2
  2 1
  3 20
  4 0

怎样写SELECT 语句才能 显示 最后面那条数据 (即 4 0 )

[解决办法]

SQL code
select a.dev_type_id, nvl(b.num, 0) num  from (select distinct dev_type_id from dev_info) a,       (select dev_type_id, count(dev_type_id) as num          from dev_info         where dev_state = 0 grouy by dev_type_id) b where a.dev_type_id = b.dev_type_id(+) 

热点排行