Wpis z mikrobloga

Mirki mam bazę danych w której ktoś trzyma date jako typ: text. Niestety jest to duży problem przy wywołaniu zapytania np where data > 01.04.2017 AND data < 13.04.2017 ponieważ oprócz Kwietnia wyświetla jeszcze pozostałe miesiące bo bierze po uwagę tylko liczbę odpowiedzialną za dzień można to jakoś rozgryźć bez zmiany typu? #mysql #bazydanych #database
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Docx: rozwaz skonwrtowanie tego badziewia do przyzwoitego formatu.

Update xxx set data=strtodate (data, '%d.%m.%Y');
Alter table xxx modify column data date;

(Przetestuj gdzies na boku)
  • Odpowiedz
@Docx: Jeśli z różnych powodów nie możesz tego zmienić to rozważ
a) zmiana formatu w tabeli i wystawienie widoku ze starym formatem
b) kolumna wirtualna ze starym formatem i prawdziwa z nowym.
  • Odpowiedz
@Docx: No i prawidłowo, nie zapomnij że beznadziejny kod w aplikacjach i tak trzeba poprawić ASAP, np. w grudnie lub w dwutysięcznymdwudziestym.
  • Odpowiedz