DenisOgr
@DenisOgr
Developer

Как написать такой запрос к таблице?

Есть таблица forms
id count_forms
1 800
2 900
3 10
4 60
5 596

Нужно составить такой запрос:
Выбрать id из таблицы forms где СУММА(count_forms) больше 1000.
НО сумма должна быть самой близкой к 1000.

SELECT id, SUM(count_forms) as sum_count_forms FROM forms WHERE sum_count_forms>1000

не работает.
  • Вопрос задан
  • 2381 просмотр
Пригласить эксперта
Ответы на вопрос 2
Rpsl
@Rpsl
Кратко о себе
Используйте HAVING.

Примерно так:
SELECT id, SUM(count_forms) as sum_count_forms 
FROM forms 
HAVING sum_count_forms > 1000
ORDER BY sum_count_forms ASC
LIMIT 1
Ответ написан
@d_f
Математик минус программист
А задача поставлена корректно? Если у нас одна таблица, то функция сумма просто просуммирует все значения и выдаст итоговую сумму. А потом будет сравнение ее с 1000. Группировка в таблице есть?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы