我需要帮助在codeigniter中选择Sum

问题描述 投票:0回答:1

我需要帮助来纠正 codeigniter 中的 php 函数。 我有一个数据库;我想要添加“from_user_id”的所有值。

Check data

我使用这个sql来获得想要的结果。

 SELECT SUM(kiff_envoi+kiff_recu+visite_recu+profile_visite+da_recu+da_envoi+topic_poster+repon_topic+conv_envoi+conv_recu) AS total_stats FROM score WHERE from_user_id = ?

在 codeingniter 中我使用这个函数。 它允许我检查“from_user_id”是否存在,如果存在,我们计算不同表的总数,并更新“total_stats”中的结果。如果“ from_user_id ”不存在,则创建它。 但我的函数没有返回正确的结果。

我犯了一个大错误,但我不知道在哪里! 有人可以帮助我吗?

public function count_tout_stats($user_id) //total des stats 

{
$this->db->select_sum(conv_recu, conv_envoi, repon_topic, etc...);
$query = $this->db->from('score'); 
$this->db->where('from_user_id', $user_id);

$total_stats = $this->db->count_all_results();

if ($this->ttl_stats_score($user_id) > 0) // Check if exists  
{
    $data = array( 
        'total_stats' => $total_stats
    );
    $this->db->where('from_user_id', $user_id);
    $this->db->update('score', $data);
}
else
{
    $data = array( 
        'from_user_id' => $user_id,
        'total_stats' => $total_stats
    );
    $this->db->insert('score', $data);  
}

return $total_stats;
} 

public function ttl_stats_score($user_id)
{
$this->db->where('from_user_id', $user_id);
$this->db->from('score');

return $this->db->count_all_results(); 
}

提前感谢您的协助

紫罗兰

php codeigniter select activerecord sum
1个回答
0
投票

你可以试试这个:

$this->db->select('(kiff_envoi+kiff_recu+visite_recu+profile_visite+da_recu+da_envoi+topic_poster+repon_topic+conv_envoi+conv_recu) as total_stats');
$this->db->from('score'); 
$this->db->where('from_user_id', $user_id);

$result = $this->db->get()->row_array();
print_r($result);

你将会得到你的结果

© www.soinside.com 2019 - 2024. All rights reserved.