如何在php中迭代空结果集

时间:2015-12-28 09:47:17

标签: php mysql codeigniter

我正在通过PHP执行以下查询:

SELECT count(*) as total,ifnull(status,1000) as status from xyz
WHERE user_id in( 0)  and ifnull(status,1000) in (1)
GROUP BY ifnull(status,1000)

之后我正在迭代

foreach($result as $r)
{
    if($r->status == 1)
       // Blobk of code
}

但问题是没有行处于1状态,这就是为什么它没有执行代码块。

我希望执行该代码块。 截至目前,由于$result为空,因此无法执行。

1 个答案:

答案 0 :(得分:0)

希望这将有助于其他人, 这就是我想要的:

SELECT 
            ifnull(status,1000) as status, 
            CASE WHEN EXISTS (SELECT no FROM detail_master b WHERE ifnull(b.status,1000) in (1) and b.id in( 0))
            THEN count(*)
            ELSE 0
            END AS total
            FROM  detail_master where ifnull(status,1000) in (1) and av_status = 1 group by ifnull(b.status,1000)

此查询的输出为:

status     total
   1          0 

即使id 0没有数据,总计为0。