Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: MySQL: Select-lauseesta

punppis [25.10.2007 00:53:32]

#

Lyhyesti ja ytimekkäästi. Miten saan seuraavasta taulusta

+-------------+----+
| kirjoittaja | id |
+-------------+----+
| punppis     |  1 |
| punppis     |  2 |
| random      |  3 |
| asdasd      |  4 |
| asdasd      |  5 |
| asdasd      |  6 |
+-------------+----+

Tulostettua seuraavat rivit

+-------------+-----------+
| kirjoittaja | count(id) |
+-------------+-----------+
| random      |     1     |
| punppis     |     2     |
| asdasd      |     3     |
+-------------+-----------+

Itellä tuli päähän luonnollisesti

SELECT kirjoittaja, count(id) FROM viestit;

mutta ei se tietenkään toimi noin :(

antsa [25.10.2007 05:36:15]

#

Kokeileppa:

SELECT kirjoittaja,count(*) FROM viestit GROUP BY kirjoittaja;

punppis [25.10.2007 18:08:00]

#

Lisäsin tuohon Antsan lauseeseen pari juttua, mutta ei toimi arkku.netissä, vaikka omalla koneella toimi (WAMP 5). Missähän vika?

SELECT kirjoittaja,count(*) FROM viestit GROUP BY kirjoittaja ORDER BY count(*) DESC LIMIT 3
#1111 - Invalid use of group function

Voipi muuden käydä katsomassa tuota vieraskirjaani. Kommentteja/valituksia vastaanotetaan.

kayttaja-2791 [25.10.2007 19:02:15]

#

Vika taitaa olla ORDER BY -määrityksessä, kun käytät sielä tuota ryhmittämisfunktiota COUNT, joka ei taida sinne kuulua. Kokeiles:

SELECT kirjoittaja, count(*) AS maara FROM viestit GROUP BY kirjoittaja ORDER BY maara DESC LIMIT 3

punppis [25.10.2007 19:05:50]

#

JTS kirjoitti:

Vika taitaa olla ORDER BY -määrityksessä, kun käytät sielä tuota ryhmittämisfunktiota COUNT, joka ei taida sinne kuulua. Kokeiles:

SELECT kirjoittaja, count(*) AS maara FROM viestit GROUP BY kirjoittaja ORDER BY maara DESC LIMIT 3

Nonniin, kiitos vaan. Hyvin toimii ;)

Vastaus

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

Tietoa sivustosta