Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何有效地处理这些行_Php_Mysql_Arrays - Fatal编程技术网

Php 如何有效地处理这些行

Php 如何有效地处理这些行,php,mysql,arrays,Php,Mysql,Arrays,我有两张桌子 表1:发票 表2:发票状态 我有一排像下面这样的 这里有两张发票,发票号=1,2 当发票状态处于查询状态时,则有待统计的原因 这里我需要的结果集如下: 对于过帐和查询,您可以在if上使用不同发票id的计数作为总和 select count(distinct invoce_id) no_of_invoices, sum(if(s_status = 'posted', 1,0)) invoice_status_posted, sum(if(s_stat

我有两张桌子

表1:发票

表2:发票状态

我有一排像下面这样的

这里有两张发票,发票号=1,2

当发票状态处于查询状态时,则有待统计的原因

这里我需要的结果集如下:


对于过帐和查询,您可以在if上使用不同发票id的计数作为总和

select count(distinct invoce_id) no_of_invoices, 
       sum(if(s_status = 'posted', 1,0)) invoice_status_posted,
        sum(if(s_status = 'query', 1,0)) invoice_status_query
from my_table
对你来说最新的。。问题

  select count(distinct invoce_id) no_of_invoices, 
    sum(if(s_status = 'posted', 1,0)) invoice_status_posted,
    sum(if(s_status = 'query' AND pending_reason is null, 1,0)) invoice_status_query, 
    sum(if() s_status = 'query' and pending_reason ='Pending Internal Clariication', 1,0)) Pending_Internal_Clariication

from my_table

谢谢,我编辑了一个问题,实际上我使用了连接表,然后我尝试在php中处理结果,现在我已将问题更改为在mysql中处理,答案已更新。。但是,在一个有效的答案之后再修改问题是不公平的..为修改问题道歉,实际上我是在尝试用php处理结果,然后在看到你的答案后,我有信心,我可以在mysql本身中获得更改的原因。谢谢。。您可以直接在mysql中执行此操作。。比在实时表中的phSphere处理更简单,我的发票计数为10000,状态计数为30000,有问题吗?