Takže říkáte, že máte
id data1 data2 data3
1 2.5 2.6 2.7
2 2.6 7.0 8.2
3 3.0 1.8 6.0
a chcete vypočítat součin položek hlavní úhlopříčky (bez ohledu na id
sloupec)?
Z vaší otázky není jasné, zda to je to, co chcete dělat, nebo zda chcete pouze vypočítat data1 * data2 * data3
pro každý řádek.
Pokud je to to druhé:Měli byste to udělat v MySQL. Přidejte další sloupec do seznamu sloupců ve vašem příkazu Select:
SELECT
id,
...,
data1 * data2 * data3 AS product
FROM
...
Pokud je to první:Měli byste to udělat v PHP spíše než MySQL. Můžete to udělat nastavením vícerozměrného pole.
Pravděpodobně máte kód, který vypadá nějak takto:
while ( $row = mysqli_fetch_assoc($query_result) ) {
echo $row['id'].' '.$row['data1'].' '.$row['data2'].' '.$row['data3'];
}
Změníme jej na následující:
$myarray = array();
while ( $row = mysqli_fetch_assoc($query_result) ) {
$myarray[] = array($row['data1'], $row['data2'], ['data3']);
}
Nyní, pokud přidáte následující:
echo '<pre>';
var_dump($myarray);
echo '</pre>';
'; uvidíte, že máme dvourozměrné pole.
Nyní, pokud chceme najít součin diagonálních položek v tomto poli, můžeme použít toto:
$product = $myarray[0][0] * $myarray[1][1] * $myarray[2][2];