powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Учет операций в течение 10дней после выдачи карты
3 сообщений из 3, страница 1 из 1
Учет операций в течение 10дней после выдачи карты
    #39903607
Finswimmer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Только начинаю изучать SQL, поэтому прошу помочь в вопросе.
Есть 2 таблицы:
1-я
CARD (Информация по картам)
Нужные тут поля
DATE (дата выдачи карты)
Customer_ID (ID клиента)
Customer_FIO (ФИО клиента)
ID (ID Карты)

2-я
CARD_OPERATION (операции по карте)
Тут важные поля
TRANS_DATE(дата операции)
AMOUNT (Сумма операции)
Customer_ID (ID клиента)
ID_CARD (ID Карты)

Собственно вопрос в следующем. Как правильно построить запрос чтобы получить суммы по операциям, в течение 10 дней с момента выдачи карты, при этом сумма операции более 100 руб.

Вторую часть смог реализовать с помощью CASE, а вот ограничить период что-то не могу придумать как
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
SELECT
          a.CUSTOMER_FIO
        , a.CUSTOMER_ID
        , SUM
                    (
                    CASE
                              WHEN f.AMOUNT > 100
                              THEN f.AMOUNT
                              ELSE 0
                    END
                    )
          SUMM
FROM
          CARD a
          LEFT JOIN
                    CARD_OPERATION f
          ON
                    f.ID_CARD = a.ID
GROUP BY
          a.CUSTOMER_FIO
        , a.CUSTOMER_ID

...
Рейтинг: 0 / 0
Учет операций в течение 10дней после выдачи карты
    #39903647
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Finswimmer
Собственно вопрос в следующем. Как правильно построить запрос чтобы получить суммы по операциям, в течение 10 дней с момента выдачи карты, при этом сумма операции более 100 руб.
Дополнить условие связывания:
Код: sql
1.
2.
3.
4.
5.
6.
          LEFT JOIN
                    CARD_OPERATION f
          ON
                    f.ID_CARD = a.ID
                    AND f.TRANS_DATE >= a.DATE
                    AND f.TRANS_DATE < dateadd(d, 10, a.DATE)
...
Рейтинг: 0 / 0
Учет операций в течение 10дней после выдачи карты
    #39903649
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Finswimmer
Вторую часть смог реализовать с помощью CASE, а вот ограничить период что-то не могу придумать как
Зачем CASE, нужно просто добавить условие выборки записей:
Код: sql
1.
2.
3.
4.
5.
6.
7.
          LEFT JOIN
                    CARD_OPERATION f
          ON
                    f.ID_CARD = a.ID
                    AND f.TRANS_DATE >= a.DATE
                    AND f.TRANS_DATE < dateadd(d, 10, a.DATE)
                    AND f.AMOUNT > 100
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Учет операций в течение 10дней после выдачи карты
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]