mysql-tietokannassa on kolme saraketta
id
nimitys
väri
Pitäisi PHP:lla laskea ja tulostaa kuinka monta on mitäkin väriä.
Jelppisikö joku ennen kuin aika loppuu :-)
id
nimitys
väri
Pitäisi PHP:lla laskea ja tulostaa kuinka monta on mitäkin väriä.
Jelppisikö joku ennen kuin aika loppuu :-)
Vastaukset 6
Vanhimmat
Jotenkin näin:
$uniq = "SELECT DISTINCT vari FROM taulu GROUP BY id";
$result = mysqli_query($mysqli,$uniq);
$total_rows[] = mysqli_fetch_array($result,$uniq);
while ($total_rows = $result->fetch_assoc()) {
echo '<th>' .$total_rows[yhteisoj] . '</th>';
$total_ = "SELECT COUNT(*) FROM taulu WHERE vari = '$total_rows[vari]'";
$result2 = mysqli_query($mysqli,$total_);
$total_r = mysqli_fetch_array($result2)[0];
echo '<th>' . $total_r. '</th>';
echo "</tr>";
}
Laita herätystä aikaisemmalle niin ei aika lopu.
Tätäkö ei kukaan tiennyt ?
"GROUP BY" on taikasana.
https://www.w3resource.com/mysql/aggregate-functions-and-grouping/aggregate-functions-and-grouping-count-with-group-by.php
Mutta kun "distinct" mainitaan avauksessa, joka on suurinpiirtein "GROUP" vastakohta.
Matti Setälä
Matti Korpela
Liisa Setälä
Merja Setälä
Kun noista sukunimistä halutaa distinct count arvo, niin sehän on 2, ja etunimistä 3
Kun taas vastaavasti group count olisi 4 molemmista nimistä. Joten onkohan se GROUP BY kuitenkaan mikään taikasana.
Kyllä se on jos halutaan laskea "kuinka monta on mitäkin väriä". Korvaa tuossa linkin esimerkissä "country" väreillä vähän tyyliin:
SELECT väri,COUNT(*)
FROM taulu
GROUP BY väri;