Използвате MAX
, което е агрегатна функция. Агрегираните функции имат ефект на третиране на множество редове в таблицата като група. Ако не направите нищо специално, всички редове в цялата таблица ще се използват като една голяма група и когато агрегатна функция като MAX
ако има, всички тези редове ще бъдат кондензирани само в един обобщен ред. Този кондензиращ ефект би настъпил и за други агрегатни функции като MIN
, SUM
, GROUP_CONCAT
и приятели (вижте:http://dev. mysql.com/doc/refman/5.1/en/group-by-functions.html
). Можете също да приложите специфични групирания с помощта на GROUP BY
construct, но ако не го направите, появата на агрегатната функция просто ще обедини всички редове в един ред (но това групиране се случва след прилагане на WHERE
условие, така че само филтрираните редове се обобщават)
Сега, поради този кондензиращ или „намаляващ“ ефект на агрегатните функции, има някакъв начин да се направи една стойност от много стойности. За MAX
, този начин е да изброите само максималната стойност, намерена за всички екземпляри на израза, който сте предали като аргумент на MAX
. Но другите ви колони нямат такава обобщена функция. За повечето продукти за бази данни, появата както на неагрегирани, така и на обобщени колони в SELECT
списъкът би бил грешка. Но MySQL се държи погрешно/различно и връща само една от наличните стойности за всеки неагрегиран израз, посочен в SELECT
малко. Коя стойност зависи от mysql - не можете да разчитате на конкретен алгоритъм.
В много случаи хората искат да направят нещо с "който и ред да има максимална стойност", с други думи, да намерят реда, който има като стойност максималната стойност, но използват другите колони от този ред неагрегирани. Решението, предоставено от middaparka, прави това и има и други начини да се постигне това (google за MySQL максимум по отношение на групата). За по-обща информация относно агрегатните функции и свързаните с тях GROUP BY
клауза, можете да разгледате -shameless selfplug- статията ми тук:http://rpbouman.blogspot.com/2007/05/debunking-group-by-myths.html