sortowanie kolumny tekstowej jak 20.01.2013

0

witam, ma, problem z posortowaniem kolumny tekstowej,(jak 20.01.2013), nawet po użyciu to_date nie sortuje po dacie tylko po pierwszych cyfrach.
Może ma ktoś pomysł jak to ugryźć, aby najpierw patrzył na 2013, potem 01. a potem 20 -robi dokładnie odwrotnie

5

Skoro to jest data, to trzymaj w bazie jako datę. Wtedy takowego problemu mieć nie będziesz. Wszelkie inne rozwiązania to partactwo moim zdaniem.

0

dzięki, rozumiem, że wtedy sortowania zadziała prawidłowo?
może zatem poradzisz jak trzymać dane w kolumnie data jeśli nie wszystkie dane trzymają format(np. dd.mm.yyyy), niektore maja tyko mm.yyyy a tez maja byc przechowywane w tej samej kolumnie...-dlatego poki co mam jako tekst...

0

to jeżeli koniecznie ma to być w fromacie tekstowym, to przyjmij format yyyy.MM.dd, wówczas sortując łańcuch tekstowy będzie trochę lepiej (ale nie zawsze).

0

Dlaczebo będzie lepiej?

0

format dd.mm.yyyy jest wymuszony przez klienta-nie do ruszenia:(

1

select * from dupa order by to_date(...) i musi sortować prawidłowo

1

Zrób z tym porządek. Przekonwertuj wszystkie teksty do daty, napisz procedurę która poprawnie zamieni ten tekst na datę. Potem będziesz mógł wygodnie sortować i formatować.

0

jak zamienić na date w formacie dd.mm.yyyy tekst który ma tylko miesiąc i rok lub brak danych(bd)? #dlatego zdecydowałem się na format tekstowy
odnośnie to_date - działa tylko w pojedynke, jeśli chce dołożyć sortowanie po innej kolumnie, a potem to_date - to się sypie....

0

A jak chcesz sortować? Która data jest większa: 01-2016 czy 01-2016 ? ;-)
Pozdrawiam

0
mamut1234 napisał(a):

format dd.mm.yyyy jest wymuszony przez klienta-nie do ruszenia:(
Ale to nie jest problemem. U mnie format daty jest dowolnie określony w ustawieniach systemu. Każdy wybiera sobie jak chce. W bazie siedzi pole o typie daty i nie ma problemu z sortowaniem czy wybieraniem rekordów.

1
mamut1234 napisał(a):

jak zamienić na date w formacie dd.mm.yyyy tekst który ma tylko miesiąc i rok lub brak danych(bd)? #dlatego zdecydowałem się na format tekstowy

to trzeba było dodać dwie - data_od i data_do - wtedy zapiszesz każdy przedział dat

odnośnie to_date - działa tylko w pojedynke, jeśli chce dołożyć sortowanie po innej kolumnie, a potem to_date - to się sypie....
pic it or didn't happen

1 użytkowników online, w tym zalogowanych: 0, gości: 1