Elementy wyboru SQL, w których suma pól jest mniejsza niż N
Biorąc pod uwagę, że mam tabelę z następującą, bardzo prostą treścią:
# select * from messages;
id | verbosity
----+-----------
1 | 20
2 | 20
3 | 20
4 | 30
5 | 100
(5 rows)
Chciałbym wybrać N wiadomości, których suma gadatliwości jest niższa niż Y (dla celów testowych powiedzmy, że powinna wynosić 70, wtedy poprawnymi wynikami będą wiadomości o identyfikatorze 1,2,3). To dla mnie bardzo ważne, że to rozwiązanie powinno być niezależne od bazy danych (powinno działać przynajmniej na Postgres i SQLite).
Próbowałem z czymś takim:
SELECT * FROM messages GROUP BY id HAVING SUM(verbosity) < 70;
Jednak wydaje się, że nie działa zgodnie z oczekiwaniami, ponieważ w rzeczywistości nie sumuje wszystkich wartości z kolumny oznajmiania.
Byłbym bardzo wdzięczny za wszelkie wskazówki / pomoc.