ORACLE 11g - Вывести данные с определенной суммой а течение семи дней
На ORACLE 11g есть таблица transactions (транзакция), пример:
CREATE TABLE transactions (id, sender_name, transaction_date, amount) AS
SELECT '1111', 'Alice', TIMESTAMP '2023-01-03 01:26:29', 700 FROM DUAL UNION ALL
SELECT '2222', 'Alice', TIMESTAMP '2023-01-05 04:26:29', 450 FROM DUAL UNION ALL
SELECT '3333', 'Alice', TIMESTAMP '2023-01-08 18:26:29', 1000 FROM DUAL UNION ALL
SELECT '4444', 'Alice', TIMESTAMP '2023-01-09 04:26:29', 200 FROM DUAL UNION ALL
SELECT '6666', 'Betty', TIMESTAMP '2023-03-12 15:26:29', 845 FROM DUAL UNION ALL
SELECT '7777', 'Betty', TIMESTAMP '2023-03-19 11:00:29', 300 FROM DUAL UNION ALL
SELECT '9999', 'Carol', TIMESTAMP '2023-08-26 01:26:29', 200 FROM DUAL UNION ALL
SELECT '8888', 'Carol', TIMESTAMP '2023-08-29 02:26:29', 700 FROM DUAL UNION ALL
SELECT '1234', 'Carol', TIMESTAMP '2023-09-10 03:26:29', 500 FROM DUAL UNION ALL
SELECT '4567', 'Carol', TIMESTAMP '2023-09-11 08:26:29', 501 FROM DUAL UNION ALL
SELECT '2345', 'Carol', TIMESTAMP '2023-09-17 04:26:29', 1001 FROM DUAL UNION ALL
SELECT '3456', 'Carol', TIMESTAMP '2023-09-30 05:26:29', 100 FROM DUAL UNION ALL
SELECT '5678', 'Carol', TIMESTAMP '2023-10-01 05:26:29', 100 FROM DUAL;
Прошу прощения за такое, но мне нужна два варианта выборки данных:)))
Вариант Надо вывести транзакции клиента
(sender_name)которого в общем сумме отправил денег более(amount)> 1000 в течение семи дней после первой отправки. В этом случае результат должен быть: все транзакцииAliceпотому что первый платеж 03.01 и в течение семи дней по 09.01 и у нее сумма транзакции в течение эти дней более 1000. И все транзакцииBettyтоже логика такая. А уCarolрезультат должен быть транзакции 10.09, 11.09 и 17.09 тоже такая логика.Вариант Можно ли определить начало недели (начиная с Понедельника) и вывести транзакции клиента осуществляемые в течение недели (с Понедельника по Воскресение) с общей суммой
amountболее 1000? Если да, то так можно делать.