nixp.ru v3.0

17 января 2017,
вторник,
00:46:08 MSK

DevOps с компанией «Флант»
Digger написал 31 июля 2006 года в 16:17 (286 просмотров) Ведет себя как мужчина; открыл 39 тем в форуме, оставил 251 комментарий на сайте.

mysql> select * from school;

+———+——-+

| name | class |

+———+——-+

| petr | 5 |

| masha | 4 |

| kolya | 4 |

| noob1 | 5a |

| ivan | 5a |

| egor | 5a |

| masha2 | 5 |

+———+——-+

7 rows in set (0.00 sec)

надо написать запрос, который выдает класс, где учится больше всего учеников.. У меня стоит mysql и запросы типа MAX(count(name)) не выполняются (вложенные). Уже давно с ней мучаюсь.. Есть идеи?

Digger

Кому интересно, получилось вот такое: (postgreSQL)

baza=# select * from school

baza-# ;

name | class

———+————

vasya | 2

vasya | 2

petr | 2

petr | 1

petr | 3

grisha | 5

masha | 5

vitya | 5

anton | 5

anton | 2

anton2 | 5

(11 rows)

baza=# select class from (select class, count(class) from school group by class) AS foo where foo.count=(select max(count) from (select count(class) from school group by class) AS foo2);

class

————

5

(1 row)

sas

Using psql specific feature limit (not standard):

select class, count( class ) as total from school group by class order by total desc limit 1;

ecobeingecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.