select count(*) from (select distinct kitsproduc0_.typ, kitsproduc0_.user_id, kitsproduc0_.pro_type_id from sys_product_reserve kitsproduc0_, sys_product kitsproduc1_, sys_product_type kitsproduc2_, sys_users kitsuser3_ where kitsproduc0_.pro_type_id = kitsproduc2_.id and kitsproduc2_.product_id = kitsproduc1_.id and kitsproduc0_.user_id = kitsuser3_.id and kitsproduc0_.type > 0)
执行下,看看是这个意思不? select count(DISTINCT kitsproduc0_.type||','||kitsproduc0_.user_id||','||kitsproduc0_.pro_type_id) as c from sys_product_reserve kitsproduc0_, sys_product kitsproduc1_, sys_product_type kitsproduc2_, sys_users kitsuser3_ where kitsproduc0_.pro_type_id=kitsproduc2_.id and kitsproduc2_.product_id=kitsproduc1_.id and kitsproduc0_.user_id=kitsuser3_.id and kitsproduc0_.type>0
select count(*)
from (select distinct kitsproduc0_.typ,
kitsproduc0_.user_id,
kitsproduc0_.pro_type_id
from sys_product_reserve kitsproduc0_,
sys_product kitsproduc1_,
sys_product_type kitsproduc2_,
sys_users kitsuser3_
where kitsproduc0_.pro_type_id = kitsproduc2_.id
and kitsproduc2_.product_id = kitsproduc1_.id
and kitsproduc0_.user_id = kitsuser3_.id
and kitsproduc0_.type > 0)
select
count(DISTINCT kitsproduc0_.type||','||kitsproduc0_.user_id||','||kitsproduc0_.pro_type_id) as c
from
sys_product_reserve kitsproduc0_,
sys_product kitsproduc1_,
sys_product_type kitsproduc2_,
sys_users kitsuser3_
where
kitsproduc0_.pro_type_id=kitsproduc2_.id
and kitsproduc2_.product_id=kitsproduc1_.id
and kitsproduc0_.user_id=kitsuser3_.id
and kitsproduc0_.type>0