Autor Zpráva
Mi24v
Profil
Zdravím,
hledal jsem na netu i v různých manuálech. Potřebuji z databáze např. vypsat knihu s největším počtem stran. Někde jsem se dočetl že takhle by to mělo jít, ale nejde. Poradíte někdo??

SELECT kniha, MAX(stran) FROM knihovna
Taps
Profil
Mi24v:
select kniha, max(stran) as pocet from knihovna group by kniha
Mi24v
Profil
Promiň, to mi nepomáhá...

PhpMyAdmina mám verze 2.11.2.1
MySQL 5.0.45

Může to mít něco s tím společnýho??
Mi24v
Profil
Tohle mi to píše:
Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause
Mi24v
Profil
To mi zas vypíše x hodnot a já potřebuji jen jednu... Můžu tě ještě poprosit?? :-)
Mi24v
Profil
Dal jsem tam LIMIT, tak to snad bude OK, díky za rady...
Alphard
Profil
Limit k čemu? max() se hodí spíš k agregaci, viděl bych to nějak takhle:
select kniha from knihovna order by pocetStran desc limit 1

Jediný problém je v tom, že jestli je tam více knih s největším počtem stran, vypíše se jen jedna, takže:
select kniha from knihovna where pocetStran = (select max(pocetStran) from knihovna)

Sem se max() hodí víc.
Mi24v
Profil
Díky

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: