Więc mówisz, że masz
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
i chcesz obliczyć iloczyn wpisów głównej przekątnej (bez względu na id
kolumna)?
Z Twojego pytania nie wynika jasno, czy to właśnie chcesz zrobić, czy po prostu chcesz obliczyć data1 * data2 * data3
dla każdego rzędu.
Jeśli to drugie:powinieneś to zrobić w MySQL. Dodaj dodatkową kolumnę do listy kolumn w instrukcji select:
SELECT
id,
...,
data1 * data2 * data3 AS product
FROM
...
Jeśli jest to pierwsze:Powinieneś to zrobić w PHP, a nie w MySQL. Możesz to zrobić, konfigurując tablicę wielowymiarową.
Prawdopodobnie masz kod, który wygląda mniej więcej tak:
while ( $row = mysqli_fetch_assoc($query_result) ) {
echo $row['id'].' '.$row['data1'].' '.$row['data2'].' '.$row['data3'];
}
Zmienimy to na następujące:
$myarray = array();
while ( $row = mysqli_fetch_assoc($query_result) ) {
$myarray[] = array($row['data1'], $row['data2'], ['data3']);
}
Teraz, jeśli dodasz następujące:
echo '<pre>';
var_dump($myarray);
echo '</pre>';
'; zobaczysz, że mamy dwuwymiarową tablicę.
Teraz, jeśli chcemy znaleźć iloczyn pozycji przekątnych w tej tablicy, możemy użyć tego:
$product = $myarray[0][0] * $myarray[1][1] * $myarray[2][2];