SQL выбирает элементы, где сумма полей меньше N
Учитывая, что у меня есть таблица со следующим, очень простым содержимым:
# select * from messages;
id | verbosity
----+-----------
1 | 20
2 | 20
3 | 20
4 | 30
5 | 100
(5 rows)
Я хотел бы выбрать N сообщений, чья сумма многословия меньше, чем Y (для целей тестирования, скажем, должно быть 70, тогда правильными результатами будут сообщения с идентификатором 1,2,3). Для меня действительно важно, чтобы решение было независимым от базы данных (оно должно работать, по крайней мере, на Postgres и SQLite).
Я пытался с чем-то вроде:
SELECT * FROM messages GROUP BY id HAVING SUM(verbosity) < 70;
Однако кажется, что он работает не так, как ожидалось, потому что он фактически не суммирует все значения из столбца многословия.
Буду очень признателен за любые подсказки / помощь.