Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.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 另一个新手问题;如何在这里实现Count()?_Php_Sql_Mysql_Database - Fatal编程技术网

Php 另一个新手问题;如何在这里实现Count()?

Php 另一个新手问题;如何在这里实现Count()?,php,sql,mysql,database,Php,Sql,Mysql,Database,我有一个疑问: SELECT mt.*, fordon.*, boende.*, elektronik.*, business.*, hem_inredning.*, hobby.* FROM classified mt LEFT JOIN fordon ON fordon.classified_id = mt.classified_id LEFT JOIN boende ON boende.classified_id = mt.classified_id LEFT JOIN elektr

我有一个疑问:

SELECT mt.*, fordon.*, boende.*, elektronik.*, business.*, hem_inredning.*, hobby.*
FROM classified mt 
LEFT JOIN fordon ON fordon.classified_id = mt.classified_id 
LEFT JOIN boende ON boende.classified_id = mt.classified_id 
LEFT JOIN elektronik ON elektronik.classified_id = mt.classified_id 
LEFT JOIN business ON business.classified_id = mt.classified_id 
LEFT JOIN hem_inredning ON hem_inredning.classified_id = mt.classified_id 
LEFT JOIN hobby ON hobby.classified_id = mt.classified_id 
ORDER BY modify_date DESC
我需要在这里实现一个计数,将所有行与您看到的联接结合起来进行计数

我该怎么做

?//这种方法行不通


谢谢

我通过删除了
订单,因为
计数不需要它

SELECT count(*)
FROM classified mt  
LEFT JOIN fordon ON fordon.classified_id = mt.classified_id  
LEFT JOIN boende ON boende.classified_id = mt.classified_id  
LEFT JOIN elektronik ON elektronik.classified_id = mt.classified_id  
LEFT JOIN business ON business.classified_id = mt.classified_id  
LEFT JOIN hem_inredning ON hem_inredning.classified_id = mt.classified_id  
LEFT JOIN hobby ON hobby.classified_id = mt.classified_id 

我通过
删除了
订单,因为计数
不需要它:

SELECT count(*)
FROM classified mt  
LEFT JOIN fordon ON fordon.classified_id = mt.classified_id  
LEFT JOIN boende ON boende.classified_id = mt.classified_id  
LEFT JOIN elektronik ON elektronik.classified_id = mt.classified_id  
LEFT JOIN business ON business.classified_id = mt.classified_id  
LEFT JOIN hem_inredning ON hem_inredning.classified_id = mt.classified_id  
LEFT JOIN hobby ON hobby.classified_id = mt.classified_id 
简单地说:

SELECT COUNT(*) FROM ...
简单地说:

SELECT COUNT(*) FROM ...


从……中选择计数(*)怎么样?我不确定你想数什么。

从…中选择计数(*)怎么样?我不确定您要计算的行数。

我正在计算找到的行数。。。需要它来分页。。。为什么答案如此不同?@Camran,你想数一数那些表格里的所有东西吗?或者只是一张桌子?如果尝试全部计数,请选择count(*)worksNo,not all,only rows of Joint,check my QueryWell
count(*)
统计合并表之间的结果组合。如果您需要它进行分页,您可能只需要从mt中选择COUNT(*)即可从主联接查询中分别获取计数。我同意,@Camran不需要进行联接进行计数,因为它们都是左联接(假设每个联接表中的对应行不超过一行)我正在尝试计算找到的行数。。。需要它来分页。。。为什么答案如此不同?@Camran,你想数一数那些表格里的所有东西吗?或者只是一张桌子?如果尝试全部计数,请选择count(*)worksNo,not all,only rows of Joint,check my QueryWell
count(*)
统计合并表之间的结果组合。如果您需要它进行分页,您可能只需要从mt中选择COUNT(*)即可从主联接查询中分别获取计数。我同意,@Camran不需要进行联接进行计数,因为它们都是左联接(假设每个联接表中的对应行不超过一行),最后,如何检索行的nr$res=mysql\u query($query);那么我该怎么办?@Camran:它将返回一个包含单行和单列的表。您可以向计数结果添加别名,并像查询中的任何其他字段一样进行访问:选择count(*)As NumberOfRecs FROM…。最后,我如何检索行的nr$res=mysql\u query($query);那我该怎么办?@Camran:它将返回一个只有一行和一列的表。你可以在计数结果中添加一个别名,并像查询中的任何其他字段一样进行访问:选择count(*)As NumberOfRecs FROM…,这是个坏主意!这将导致一个巨大的临时表,您不需要任何数据。这是一个坏主意!这将产生一个巨大的临时表,您不需要从中获取任何数据。当您执行此操作时,您将返回不需要的数据(联接字段是重复的),并导致服务器执行不必要的工作,并通过网络发送超出需要的更多信息。如果在大多数查询中都这样做,那么除了懒惰之外,没有其他原因会导致性能问题。非常糟糕的做法。HLGEM,为了简化,在这里的示例中通常使用
SELECT*
。虽然用户不应该在生产代码中使用它们,但最好提醒OP,“为你感到羞耻”是在开玩笑。为你在任何带有连接的查询中使用select*感到羞耻。当您执行此操作时,您将返回不需要的数据(联接字段是重复的),并导致服务器执行不必要的工作,并通过网络发送超出需要的更多信息。如果在大多数查询中都这样做,那么除了懒惰之外,没有其他原因会导致性能问题。非常糟糕的做法。HLGEM,为了简化,在这里的示例中通常使用
SELECT*
。虽然用户不应该在生产代码中使用它们,但提醒OP“为你感到羞耻”是件好事。