kukimax
23.11.2013, 23:50:49
Witam,
Jak napisać zapytanie do SQL aby z poniższej tabeli:
ID | data
1 | 2013-10-05
2 | 2013-11-22
3 | 2013-12-01
Powtórzyły się rekordy których data minęła 5, 15 i 20 dni licząc od wprowadzonej daty.
Przykładowo dla daty 2013-11-30 powinna wyświetlić się poniższa tabela:
ID | data | data po dodaniu
1 | 2013-10-05 | 2013-10-10
1 | 2013-10-05 | 2013-10-20
1 | 2013-10-05 | 2013-10-25
2 | 2013-11-22 | 2013-11-27
Z góry dzięki za odpowiedź.
c1chy
24.11.2013, 00:13:58
SELECT `id`,`data`,DATE_ADD(`data`, INTERVAL 5 DAY) AS `data_po_dodaniu` FROM tabela
kukimax
24.11.2013, 00:22:43
Nie o to mi chodzi.
Rekord z id 1 powtarza się 3 razy bo minęło zarówno 5, 15 i 20 dni od wprowadzanej daty, natomiast id 2 powtarza się tylko jeden raz bo ten termin miną tylko 5 dnia, a 15 i 20 jeszcze nie.
Mi zależy na tym aby id się powtórzyły , a nie dodało się 5 dni.
c1chy
24.11.2013, 00:46:11
SELECT * FROM daty WHERE datediff(now(), `data`) > 5
UNION ALL
SELECT * FROM daty WHERE datediff(now(), `data`) > 15
UNION ALL
SELECT * FROM daty WHERE datediff(now(), `data`) > 20
Tylko czy na pewno potrzebujesz takiej konstrukcji ?