我Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 141954624 bytes)在计算所有行mysql表时遇到问题
$query = $db->query("SELECT * FROM table");
$count = $db->num_rows($query);
echo $count;
Run Code Online (Sandbox Code Playgroud)
总行数约17k,我得到了Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 141954624 bytes).让我知道,如何解决它.
目前我的代码是这样的:
<?php
$qall = $db->query("SELECT * FROM location_code
WHERE
StateCode='".$secureStateCode."'");
while($fall = $db->fetch($qall)) {
?>
<tr>
<th><?php echo $fall['StateCode']; ?></th>
<td><?php echo $fall['StateName']; ?></td>
<td>
<?php
$query = $db->query("SELECT COUNT(*) AS `male_count`
FROM `all_users`
WHERE `Sex`='M'
AND
`StateCode`='{$fall['StateCode']}'");
$data = $db->fetch($query);
echo $data['male_count'];
?>
</td>
<td>
<?php
$query = $db->query("SELECT COUNT(*) AS `female_count`
FROM `all_users`
WHERE `Sex`='F'
AND
`StateCode`='{$fall['StateCode']}'");
$data = $db->fetch($query);
echo $data['female_count'];
?>
</td>
<td>Total male_count + female_count</td>
</tr>
<?php } ?>
Run Code Online (Sandbox Code Playgroud)
如何组合这些查询并使其加载速度更快,以满足男性和女性的需求.目前我有大约50万用户.