![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 305 Pomógł: 25 Dołączył: 27.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam zapisaną datę w następującym formacie:
Przykładowo: 20100713 oznacza 2010-07-13 Niestety nie ja zaprojektowałem tą bazę danych, a jedynie wykonuję zlecenie polegające na rozbudowie bieżącego projektu o nową funkcjonalność. Muszę od jakiejś daty odjąć ileśtam dni. Przykładowo: -60 dni. Jak to wykonać na poziomie SQL? Wiadomo, że nie mogę zrobić 20100713-60, więc jak inaczej, najwydajniej? Szukam i kombinuję, wycinam poszczególne znaki ww. daty (1,4 - rok, etc). Czy mogę jakoś to lepiej rozegrać? Ten post edytował kilas88 13.07.2010, 16:47:17 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
1) Przekonwertuj ta kolumne na pole typu timestamp lub datetime
2) W mysql masz sporo funkcji do opercji na datach date_add itd google -> mysql datetime functions -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 305 Pomógł: 25 Dołączył: 27.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
1) Przekonwertuj ta kolumne na pole typu timestamp lub datetime 2) W mysql masz sporo funkcji do opercji na datach date_add itd google -> mysql datetime functions Chciałbym, ale nie mogę, dlatego wyżej wspomniałem, że rozbudowuję projekt po kimś innym (a projekt jest już na tyle rozbudowany, że koszta przebudowy będą dość spore). Badziewnie zapisane te dane. Jak na razie zrobiłem (choć nie jest to zbyt satysfakcjonujące rozwiązanie):
:prepare_date = date("Y-m-d") :time_range = jakaś liczba Gdyby ktoś miał jakiś lepszy i wydajniejszy pomysł to proszę o rady. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 20.07.2025 - 09:34 |