Надеюсь, вы можете помочь.У нас есть таблица с двумя столбцами Customer_ID и Trip_Date.Клиент получает 15% скидку при первом посещении и при каждом посещении, когда он не получил 15% скидку за последние тридцать дней.Как написать один SQL-запрос, который находит все дни, когда клиент получил 15% скидку?
Таблица выглядит следующим образом
+-----+-------+----------+
| Customer_ID | date |
+-----+-------+----------+
| 1 | 01-01-17 |
| 1 | 01-17-17 |
| 1 | 02-04-17 |
| 1 | 03-01-17 |
| 1 | 03-15-17 |
| 1 | 04-29-17 |
| 1 | 05-18-17 |
+-----+-------+----------+
Желаемый результат будет выглядеть следующим образом:
+-----+-------+----------+--------+----------+
| Customer_ID | date | received_discount |
+-----+-------+----------+--------+----------+
| 1 | 01-01-17 | 1 |
| 1 | 01-17-17 | 0 |
| 1 | 02-04-17 | 1 |
| 1 | 03-01-17 | 0 |
| 1 | 03-15-17 | 1 |
| 1 | 04-29-17 | 1 |
| 1 | 05-18-17 | 0 |
+-----+-------+----------+--------+----------+
Мы делаем эту работу в Netezza.Я не могу придумать, как использовать только оконные функции, использовать только рекурсию и циклы.Есть какой-то умный трюк, который мне не хватает?
Заранее спасибо, GF