簡體   English   中英

有關PHP代碼的任何想法嗎?

[英]Any ideas for a php code for this?

我需要做一些數學計算,而我似乎找不到辦法。

我有以下表,由此查詢產生:

SELECT materii.id,
       materii.materie,
        GROUP_CONCAT(note.note) AS note,
        GROUP_CONCAT(DISTINCT teza.`teza`) AS teza


FROM materii
LEFT JOIN teza ON materii.id = teza.id_materie
LEFT JOIN note ON materii.id = note.id_materie
LEFT JOIN elevi ON note.id_elev = elevi.cod_elev 
LEFT JOIN luni ON note.`luna_nota`=luni.`id`
WHERE elevi.`cod_elev` = 1 AND luna_nota = 9
GROUP BY materii.id, materii.materie
ORDER BY materii.materie

表

我需要做類似的事情:

$notele = mysql_query($pentrumedie)
                or die("Nu am gasit note in baza de date");
$numar_note = mysql_num_rows($notele);
if($numar_note==0)
{

}
else 
{
    while($rand2=mysql_fetch_array($notele))
    {     
         $note1 = ($rand2['notele'] / $numar_note);
       $medie_septembrie = ($note1 / $cate_note_sunt);
    }
}

我需要為所有“注釋”做類似的事情,但是$ rand2 ['notele']需要是它們的總和,如果有更多“注意”,並且如果有“teza”的值,那么數學公式需要是:

(($rand2['notele'] / $numar_note) * 3 + teza) / 4

我嘗試了一些功能,但沒有一個工作....任何想法? 謝謝!!!

你可以嘗試改變你的sql語句

SELECT materii.id,
   materii.materie,
    SUM(note.note)/COUNT(note.note) AS medie,
    GROUP_CONCAT(DISTINCT teza.`teza`) AS teza
FROM materii
LEFT JOIN teza ON materii.id = teza.id_materie
LEFT JOIN note ON materii.id = note.id_materie
LEFT JOIN elevi ON note.id_elev = elevi.cod_elev 
LEFT JOIN luni ON note.`luna_nota`=luni.`id`
WHERE elevi.`cod_elev` = 1 AND luna_nota = 9
GROUP BY materii.id, materii.materie
ORDER BY materii.materie

在PHP中使用類似的東西

$medii = array();
while($rand = mysql_fetch_assoc($notele))
{
  if($rand["teza"] == "" || $rand["teza"] == NULL)
  {
   $medii[] = array("materie" => $rand["materie"],
                  "medie" => $rand["medie"]);
  }
  else
  {
   $medii[] = array("materie" => $rand["materie"],
                  "medie" => ((float)$rand["medie"]*3 + (float)$rand["teza"])/4);
   }
}
var_dump($medii);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM