[mysql] sortowanie rekordów

0

Wyobraźcie sobie taką sytuacje:

id name
1 pierwszy
5 pi?ty
3 trzeci
4 czwarty

Jak widzicie usunąłem z cztero elementowej bazy danych rekord o id 2. Kolejny, który otrzymał id 5, zamiast grzecznie wejść na ostatnie miejsce, wpasował się w "pustą" przestrzeń.

Mam skrypty na stronie które przez to wyświetlają nie po kolei dane. Ponieważ odczytuje dane i od razu ("w locie") je wyświetlam, a przerobienie wszystkich skryptów żeby...

  1. tworzyły z danych tablicę 2) sortowały ją 3) dopiero wtedy wyświetlały

...stanowi dla mnie problem :(.

A więc moje pytanie brzmi czy da się posortować rekordy bezpośrednio w bazie danych? (googlałem na ten temat ale nic nie znalazłem :()

0

SELECT * FROM baza ORDER BY id ASC

0

Ja mam podobne pytanie:
Mam pole w bazie typu varchar ktore sklada sie z danych typu "jakasnazwa jakisnumer" (czyli nap znajduja sie w nim wartosci : "nazwa 200", "nazwa 20", "nazwa 305").
Teraz moje pytanie: jak uszeregowac te wartosci w kolejności nie względem nazwy lecz tej liczby w nazwie (cały czas przy założeniu że pole musi być varchar)?

Z góry dzieki za odpowiedź.

0

Ja mam podobne pytanie:
Mam pole w bazie typu varchar ktore sklada sie z danych typu "jakasnazwa jakisnumer" (czyli nap znajduja sie w nim wartosci : "nazwa 200", "nazwa 20", "nazwa 305").
Teraz moje pytanie: jak uszeregowac te wartosci w kolejności nie względem nazwy lecz tej liczby w nazwie (cały czas przy założeniu że pole musi być varchar)?

eee :| rozbij to na dwa pola i sortuj po drugim.
jeśli jednak jakimś cudem nie możesz (w co wątpię), to oblukaj sobie użycie funkcji SUBSTRING.

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