Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Listing daty z bazy danych
mattie
post 29.05.2006, 14:18:29
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 3.04.2006

Ostrzeżenie: (0%)
-----


Witam serdecznie.

Mam pytanie jak moge wylistować wszystkie daty z tabeli zawierającej kolumnę date
Daty się powtarzają a nie chodzi o wyciągnięcie dat za dały tok w postaci kwartałów jak na razie testowałem to z taką kwerendą ale cos nie chodzi:

  1. SELECT adddate( DATA , interval 1 day) FROM transakcja WHERE DATA > '1992-12-31' AND DATA < '1993-04-01' GROUP BY DATA;

Zapytanie takie zwraca wynik w postaci :
  1. mysql> SELECT adddate( DATA , interval 1 day) FROM transakcja WHERE DATA > '1992-12-31' AND DATA < '1993-04-01' GROUP BY DATA;
  2. +---------------------------------+
  3. | adddate( DATA , interval 1 day) |
  4. +---------------------------------+
  5. | 1993-01-02 |
  6. | 1993-01-03 |
  7. | 1993-01-04 |
  8. | 1993-01-05 |
  9. | 1993-01-06 |
  10. | 1993-01-07 |
  11. | 1993-01-08 |
  12. | 1993-01-09 |
  13. | 1993-01-10 |
  14. | 1993-01-11 |
  15.  
  16. | Tutaj wycinam dla skrócenia posta
  17.  
  18. | 1993-03-25 |
  19. | 1993-03-26 |
  20. | 1993-03-27 |
  21. | 1993-03-28 |
  22. | 1993-03-29 |
  23. | 1993-03-30 |
  24. | 1993-03-31 |
  25. | 1993-04-01 |
  26. +---------------------------------+
  27. 90 rows IN SET (4.73 sec)


Jak widać data stycznia zaczyna się od 02 i jeszcze dołożony kwiecień.

Może ktoś wie dlaczego tak jest.


--------------------
Slackware 11.0 kernel 2.6.18
php 5.2.0
MySQL 5.0.27
Go to the top of the page
+Quote Post
nospor
post 29.05.2006, 14:22:54
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




no przeciez o tu:
  1. .... adddate( DATA , interval 1 day)...
dodajesz jeden dzien do wybranych dat. W rzeczywistosci dostajesz od 1 stycznia do 31 marca, ale ze dodajesz jeden dzien wiec masz od 2 stycznia do 1 kwietnia. logiczne, nieprawdaz? smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
mattie
post 29.05.2006, 14:34:17
Post #3





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 3.04.2006

Ostrzeżenie: (0%)
-----


Dzięki za odpowiedź w sumie bardzo logiczne :
  1. SELECT adddate( DATA, interval 0 day ) FROM transakcja WHERE DATA > '1993-03-31' AND DATA < '1993-07-01' GROUP BY DATA;


Działa działa zastanawiam się tylko czy nie da się tego zrobic inaczej.
W każdym bądź razie o takie coś mi chodziło.


--------------------
Slackware 11.0 kernel 2.6.18
php 5.2.0
MySQL 5.0.27
Go to the top of the page
+Quote Post
nospor
post 29.05.2006, 14:39:22
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




o moj ty swiecie... cos żeś sie uczepil tego adddate? na grzyba ci dodawac zero dni? poco wogole dodawac? nie uwazasz ze logiczniej bedzie:
  1. SELECT DATA FROM .....

?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
mattie
post 29.05.2006, 14:56:36
Post #5





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 3.04.2006

Ostrzeżenie: (0%)
-----


Tak tak dokładnie tak jak piszesz bez add świetnie chodzi .
Dzięki.
Ale funkcja może się przydać:) kiedy indziej.


--------------------
Slackware 11.0 kernel 2.6.18
php 5.2.0
MySQL 5.0.27
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 16:04