![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 151 Pomógł: 0 Dołączył: 4.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
Witam forumowiczow
Szukalem rozwiazania w archiwum ale nie udalo mi sie znalezc nic co by mnie usatysfakcjonowalo, wiec zwracam sie z prosba o podsuniecie pomyslu na rozwiazanie problemu A wiec problem ksztaltuje sie nastepujaco. Zajmuje sie tabelka o takiej strukturze Kod CREATE TABLE tabelka (
id int(11) NOT NULL auto_increment, imie_nazwisko varchar(100) NOT NULL default '', tytul_naukowy varchar(50) NOT NULL default '', PRIMARY KEY (id) ) Jak widac jest to tabelka trzymajaca imiona i nazwiska oraz ich tytuly naukowe pewnych osob Dostepne tytuly naukowe to np. 'prof. zw. dr.', 'mgr.', 'dr', 'lic' itd. Chcialbym moc wyciagnac pewna grupe ludzi sortujac wg ich tytulu naukowego (pamietajac o hierarchi: a wiec najpierw 'prof. zw.' pozniej 'prof' pozniej 'dr hab' pozniej 'dr' itd...) Sortowanie alfabetyczne oczywiscie odpada Czy mozna w mysql definiowac wlasne kolejnosci sortowan (klucze) ? Jesli ktos wie to bede wdzieczny za naprowadzenie mnie na rozwiazanie -------------------- Wszystko ... co na świecie interesujące, bierze się z czyichś dziwacznych myśli [David Lynch]
Andrzej Lepper to Kretyn< |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 100 Pomógł: 0 Dołączył: 25.01.2003 Skąd: mazury, wawa Ostrzeżenie: (0%) ![]() ![]() |
Nie jestem pewien czy o to chodzi, ale na stronie mysql'a znalazlem:
Cytat The key used to fetch the rows are not the same one that is used to do the ORDER BY: SELECT * FROM t1 WHERE key2=constant ORDER BY key1
Z tego co rozumiem musisz zdefiniowac jeszcze jedna tabelke z hierachia profesorow, licencjatow itp i po niej sortowac. Od razu zaznaczam, ze jest to tylko przypuszczenie i nie stosowalem go, ani o 2 w nocy nie bede probowal. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 23 Pomógł: 0 Dołączył: 23.03.2003 Skąd: Radom Ostrzeżenie: (0%) ![]() ![]() |
Right, dodaj jeszcze jedno pole - nazwij go hierarchia... i w nim zrob hierarchie - np 1 - prof., 5 - mgr....
I sortuj wedlug pola hierarchia. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 384 Pomógł: 0 Dołączył: 3.04.2003 Skąd: Chorzow Ostrzeżenie: (0%) ![]() ![]() |
Moze srednio eleganckie, ale skuteczne w pewnych zastosowaniach:
Kod CREATE TABLE tabelka (
id int, nazwisko char(50), tytul enum('prof. zw.','dr.','mgr' ... itd ) ) i wtedy juz normalnie order by tytul. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 13.06.2025 - 08:39 |