Php 如何得到一个案例的总数?
以下是我的案例:Php 如何得到一个案例的总数?,php,mysql,Php,Mysql,以下是我的案例: $con = mysql_connect($db_host,$db_user,$db_pass) or die("خطا در اتصال به پايگاه داده"); $selected=mysql_select_db($db_name, $con) or die("خطا در انتخاب پايگاه داده"); mysql_query("SET CHARACTER SET utf8"); $dbr
$con = mysql_connect($db_host,$db_user,$db_pass) or die("خطا در اتصال به پايگاه داده");
$selected=mysql_select_db($db_name, $con) or die("خطا در انتخاب پايگاه داده");
mysql_query("SET CHARACTER SET utf8");
$dbresult=mysql_query("SELECT
tablesite.name,
tablesite.family,
tablesite.phone_number,
job_list.job_name,
relation.comments,
SUM(CASE WHEN action.vote ='perfect' AND action.customer_comment ='' THEN 2
WHEN action.vote ='nice' AND action.customer_comment ='' THEN 1
WHEN action.vote ='not bad' AND action.customer_comment ='' THEN 0
WHEN action.vote ='bad' AND action.customer_comment ='' THEN -1
WHEN action.vote !='' AND action.moderator_view ='negative' THEN -1
WHEN action.vote !='' AND action.moderator_view ='positve' THEN 1
WHEN action.vote !='' AND action.moderator_view ='no change' THEN 0 ELSE 0
END) positive
FROM tablesite
INNER JOIN relation
on tablesite.id_user=relation.user_id
INNER JOIN job_list
on relation.job_id=job_list.job_id
left JOIN action
ON tablesite.id_user=action.service_provider_id
WHERE job_name LIKE '%".$_POST['search']."%'
OR name LIKE '%".$_POST['search']."%'
OR family LIKE '%".$_POST['search']."%'
group by name,family,job_name,phone_number", $con);
我想要所选字段的总和,例如:
投票=不错,客户意见=''=>0分
投票=不好,客户意见=''==>-1分
投票=“”,版主\u视图=负面==>-1分
如果
表站点
和关系
之间或关系
和作业列表
之间没有一对一的关系,则此查询将返回意外结果,因为您正在检索关系。注释
,而不将其添加到GROUP BY
子句中
删除
关系。从选择中删除注释
,以获得正确的总和。您的代码有什么问题?@GordonLinoff no summary只是向我展示了一个选择的点。投票=好,客户评论=“”==>1分投票=坏,客户评论=“”==>-1分。告诉我-1您在查询中是否使用了groupby
?如果没有这一点,它就不会求和。@Kryten当我在group by中放入正数时,我已经将整个代码放入group by中,给我一个错误:mysql_fetch_array()期望参数1为resource,boolean givenPerhaps您的和包含空值,需要合并为0,否则结果将为空。如果您消除了总和,那么您是否得到case语句的所有预期值?