Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Datan järjestäminen

manninen [12.12.2015 22:18:12]

#

Saanko alla olevassa esimerkissä järjestettyä tulokset ORDER BY:llä mitenkään järjestykseen vai tuleeko tämä tehdä taulukkoon laitto vaiheessa?

  $q = "SELECT id FROM osastot";

   if(!$r = mysql_query($q)){

     return;

   }

   while($res = mysql_fetch_assoc($r))
   {

     $k = "SELECT COUNT(osasto) AS maara FROM asiakkaat WHERE osasto = $res[id] AND tyyppi = 0 AND poistettu IS NULL ";

      if(!$t = mysql_query($k)){

     return;

     }

     while($result = mysql_fetch_assoc($t)){

       if($result['maara'] > 0){

         $arr[] = $result['maara'];

       }

      }

   }

return $arr;

Metabolix [12.12.2015 22:45:45]

#

Et voi järjestää, kun haet rivit yksitellen. Mutta miksi edes teet monta kyselyä? Varmaan kaipaat jotain tällaista:

SELECT osastot.id, COUNT(asiakkaat.id) AS maara
FROM osastot
JOIN asiakkaat ON -- tai LEFT JOIN, jos haluat myös nollat tuloksiin
  asiakkaat.osasto = osasto.id AND
  asiakkaat.tyyppi = 0 AND
  asiakkaat.poistettu IS NULL
GROUP BY osastot.id
ORDER BY maara DESC

manninen [13.12.2015 17:13:52]

#

Vastaisin mielelläni kysymykseesi, mutta joudun myöntämään ettei minulla ole tarpeeksi järkevää vastausta. Kiitän kovasti, että annoit vastauksesi mukana loogisemman vaihtoehdon. Näinhän se kuuluu tehdä.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta