72 похожих чатов

Ребят, я новичок и есть вопрос. Скажем у меня таблица

из двух столбцов. Первый столбец юзер (текст), а вторая транзакция этого юзера (число). Один юзер может совершить несколько транзакций. Нужно определить всех юзеров которые совершили по меньшей мере три транзакции и общая сумма была больше 1000. Может есть какие-то хитрые функции которые могут помочь в данной ситуации? Я пытался сделать несколько вложений SELECT FROM, но чёт ничего не получается. Моё решение:

SELECT recipient
FROM(
SELECT recipient, SUM(amount) AS sum_am
FROM (
SELECT recipient, TOP(3) amount
FROM (
SELECT recipient, amount
FROM transactions
ORDER BY recipient ASC, amount DESC;)
AS ord;)
WHERE recipient = ord.recipient;)
WHERE sum_am >= 1000;

Буду очень благодарен, если кто-то сможет подсказать как к такой задачи приступиться.

2 ответов

6 просмотров

Select userid from thetable Group by userid having count (*) >3

postgres=# create table user_tran(user_id integer, amount numeric); CREATE TABLE postgres=# insert into user_tran values (1,100); ^[[AINSERT 0 1 postgres=# insert into user_tran values (1,200); INSERT 0 1 postgres=# insert into user_tran values (1,300); INSERT 0 1 postgres=# insert into user_tran values (2,400); INSERT 0 1 postgres=# insert into user_tran values (2,1400); INSERT 0 1 postgres=# insert into user_tran values (3,100); INSERT 0 1 postgres=# insert into user_tran values (3,1000); INSERT 0 1 postgres=# insert into user_tran values (3,100); INSERT 0 1 postgres=#

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

Обсуждают сегодня

Ребят, а за скок можно впарить анон чат с апишкой и веб админкой ?
Eugene Неелов
15
Добрый день, подскажите как правильно сделать filter в backend-e. Есть модель (товар) у который связь belongsToMany (компания), компаний > 4k, поэтому выборку типа ->all(); н...
Max Dubovsky
7
Ты просто гитлеровскую эстетику плохо понимаешь. Он же всё под Цезаря делал. А это как бы запрещённый приём в политике. Пиджаки они зачем все носят? Чтобы показать что они тип...
Ivan Kropotkin
4
а чем лучше всего сделать глобальный лок, если много нодов, до сотни? ну то есть мне надо, чтобы некоторые операции с объектом не происходили одновременно. перемещение между н...
Д. П.
15
А как лучше конвертировать физический адрес в виртуальный при маппинге? В случае ядра у меня, например, direct mapping, первые 768МБ я как есть мапплю в higher half, а остальн...
Evg Resh
26
'frakturBold' => ['𝖆', '𝖇', '𝖈', '𝖉', '𝖊', '𝖋', '𝖌', '𝖍', '𝖎', '𝖏', '𝖐', '𝖑', '𝖒', '𝖓', '𝖔', '𝖕', '𝖖', '𝖗', '𝖘', '𝖙', '𝖚', '𝖛', '𝖜', '𝖝', '𝖞', '𝖟', '𝕬', '𝕭', '𝕮', '𝕯'...
Roma
4
Добрый день, не подскажите, если в OC-V3 поменять страндартную директорию /storage/ на /storage2/ - не будет сильно много проблем ?
Max Dubovsky
32
Или нужно его какая-то более специфичная функция?
Alexey Kaptur
4
Коллеги, доброе утро. Запустил на удаленном хосте приложение (ручками зашел туда по ssh и запустил, не командой удаленно). Создал потом ssh-туннель, и с моей машины приложение...
Δημήτηρ
9
Всем привет. Нужна платная консультация от тех, кто сталкивался с октябрём в кластере или шарит оч хорошо в цмс. Проблема следующая: после переноса в кластер октябрь начал ...
wl
8
Карта сайта