SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 13.05.2016 08:52:25

Testerina
Участник
Зарегистрирован: 13.05.2016
Сообщений: 4

Запуталась. Помогите начинающему!!!

Только начиная изучать SQL. Весь интернет перерыла, но так и не смогла решить...
Есть таблица History. В ней 3 поля - Client_ID, Start_Date, Status
Нужно найти клиента(ов), который имеет самую длинную историю(по кол-ву изменения статуса)

Должно получится:
Client_ID
1
3

Понимаю, запрос, наверное, легкий, но для меня пока не понятен. Здесь нужно MAX и Count к одному и тому же полю применить?

Отредактированно Testerina (13.05.2016 09:39:41)

Неактивен

 

#2 13.05.2016 10:17:58

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Запуталась. Помогите начинающему!!!

select client_id from
(select client_id, count(*) c from history group by 1) t1 join
(select count(*) c from history group by client_id order by 1 desc limit 1) t2 using(c);

Неактивен

 

#3 13.05.2016 17:02:24

Testerina
Участник
Зарегистрирован: 13.05.2016
Сообщений: 4

Re: Запуталась. Помогите начинающему!!!

Ничего себе! Сложновато для меня, буду разбираться!( Я еще и Max хотела где-то притулить)
Спасибо)

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson