Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.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

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 Codeigniter获取复杂查询的行数_Php_Mysql_Sql_Codeigniter_Paging - Fatal编程技术网

Php Codeigniter获取复杂查询的行数

Php Codeigniter获取复杂查询的行数,php,mysql,sql,codeigniter,paging,Php,Mysql,Sql,Codeigniter,Paging,我有一个复杂的查询,其中包含多个内部联接。查询是用纯SQL编写的。我不想将其转换为活动记录。对于分页,我需要知道查询将返回的总行数,但我不想执行它。我试过: $this->db->count_all_results($query); 但它什么也不返回。有没有其他方法可以从用SQL编写的复杂查询中获取行数 以下是查询: SELECT o.id, o.heading, o.description, p.product_name, s.company_name F

我有一个复杂的查询,其中包含多个内部联接。查询是用纯SQL编写的。我不想将其转换为活动记录。对于分页,我需要知道查询将返回的总行数,但我不想执行它。我试过:

$this->db->count_all_results($query);
但它什么也不返回。有没有其他方法可以从用SQL编写的复杂查询中获取行数

以下是查询:

SELECT o.id, o.heading, o.description, p.product_name, s.company_name
            FROM ci_offer o 
            INNER JOIN ci_products p ON o.product_id = p.id
            INNER JOIN ci_suppliers s ON p.supplier_id = s.id
            ORDER BY o.modified DESC

有点奇怪的期望:)我认为即使是MySQL也无法在不执行查询的情况下预测特定查询的结果行数,更不用说PHP框架了

您可以尝试使用SQL事务,然后回滚或解释


最好的祝愿

有点奇怪的期望:)我认为即使是MySQL也无法在不执行查询的情况下预测特定查询的结果行数,更不用说PHP框架了

您可以尝试使用SQL事务,然后回滚或解释


最好的祝愿

有点奇怪的期望:)我认为即使是MySQL也无法在不执行查询的情况下预测特定查询的结果行数,更不用说PHP框架了

您可以尝试使用SQL事务,然后回滚或解释


最好的祝愿

有点奇怪的期望:)我认为即使是MySQL也无法在不执行查询的情况下预测特定查询的结果行数,更不用说PHP框架了

您可以尝试使用SQL事务,然后回滚或解释


致以最诚挚的问候

如果您想使用count\u all\u结果,您需要使用ActiveRecord

但也可以将SELECT子句中的列替换为

COUNT(1) AS total

如果要使用count\u all\u结果,则需要使用ActiveRecord

但也可以将SELECT子句中的列替换为

COUNT(1) AS total

如果要使用count\u all\u结果,则需要使用ActiveRecord

但也可以将SELECT子句中的列替换为

COUNT(1) AS total

如果要使用count\u all\u结果,则需要使用ActiveRecord

但也可以将SELECT子句中的列替换为

COUNT(1) AS total
尝试使用:

$count = $query->num_rows();
而不是:

$count = $this->db->count_all_results($query);
祝你好运

尝试使用:

$count = $query->num_rows();
而不是:

$count = $this->db->count_all_results($query);
祝你好运

尝试使用:

$count = $query->num_rows();
而不是:

$count = $this->db->count_all_results($query);
祝你好运

尝试使用:

$count = $query->num_rows();
而不是:

$count = $this->db->count_all_results($query);
祝你好运

count\u all\u results()
允许您确定特定活动记录查询中的行数

您需要运行查询,并让mysql提供查询返回的记录数。如果只需要结果行数,请尝试以下操作:

SELECT count(*)
FROM ci_offer o 
INNER JOIN ci_products p ON o.product_id = p.id
INNER JOIN ci_suppliers s ON p.supplier_id = s.id
ORDER BY o.modified DESC
count\u all\u results()
允许您确定特定活动记录查询中的行数

您需要运行查询,并让mysql提供查询返回的记录数。如果只需要结果行数,请尝试以下操作:

SELECT count(*)
FROM ci_offer o 
INNER JOIN ci_products p ON o.product_id = p.id
INNER JOIN ci_suppliers s ON p.supplier_id = s.id
ORDER BY o.modified DESC
count\u all\u results()
允许您确定特定活动记录查询中的行数

您需要运行查询,并让mysql提供查询返回的记录数。如果只需要结果行数,请尝试以下操作:

SELECT count(*)
FROM ci_offer o 
INNER JOIN ci_products p ON o.product_id = p.id
INNER JOIN ci_suppliers s ON p.supplier_id = s.id
ORDER BY o.modified DESC
count\u all\u results()
允许您确定特定活动记录查询中的行数

您需要运行查询,并让mysql提供查询返回的记录数。如果只需要结果行数,请尝试以下操作:

SELECT count(*)
FROM ci_offer o 
INNER JOIN ci_products p ON o.product_id = p.id
INNER JOIN ci_suppliers s ON p.supplier_id = s.id
ORDER BY o.modified DESC

我正在使用SQL\u CALC\u FOUND\u行来获取总计数

$this->db->select('SQL_CALC_FOUND_ROWS ci_offer.id', false);
$this->db->select('FOUND_ROWS() as total_rows', false);
$query = $this->db->get();
$total = $query->row_array();
$list_array['total'] = $total['total_rows'];

我正在使用SQL\u CALC\u FOUND\u行来获取总计数

$this->db->select('SQL_CALC_FOUND_ROWS ci_offer.id', false);
$this->db->select('FOUND_ROWS() as total_rows', false);
$query = $this->db->get();
$total = $query->row_array();
$list_array['total'] = $total['total_rows'];

我正在使用SQL\u CALC\u FOUND\u行来获取总计数

$this->db->select('SQL_CALC_FOUND_ROWS ci_offer.id', false);
$this->db->select('FOUND_ROWS() as total_rows', false);
$query = $this->db->get();
$total = $query->row_array();
$list_array['total'] = $total['total_rows'];

我正在使用SQL\u CALC\u FOUND\u行来获取总计数

$this->db->select('SQL_CALC_FOUND_ROWS ci_offer.id', false);
$this->db->select('FOUND_ROWS() as total_rows', false);
$query = $this->db->get();
$total = $query->row_array();
$list_array['total'] = $total['total_rows'];


您的查询是否有
GROUPBY
子句?不,没有。它有ORDER BY子句。你能提供你的查询吗?我不能提供,因为提供它不会有多大帮助。你的查询有
group BY
子句吗?没有。它有ORDER BY子句。你能提供你的查询吗?我不能提供,因为提供它不会有多大帮助。你的查询有
group BY
子句吗?没有。它有ORDER BY子句。你能提供你的查询吗?我不能提供,因为提供它不会有多大帮助。你的查询有
group BY
子句吗?没有。它有ORDERBY子句。你能提供你的查询吗?我不能提供,因为提供它不会有多大帮助。这看起来是一个可行的解决方案。我一定会试试。这看起来是一个可行的解决方案。我一定会试试。这看起来是一个可行的解决方案。我一定会试试。这看起来是一个可行的解决方案。我一定会试试。是的,这也是公认的答案。我会试试这个。是的,这也是公认的答案。我会试试这个。是的,这也是公认的答案。我会试试这个。是的,这也是公认的答案。我试试这个。