Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] sortowanie wyniku z pgsql
wojtekw
post 26.09.2007, 08:32:42
Post #1





Grupa: Zarejestrowani
Postów: 101
Pomógł: 0
Dołączył: 11.09.2007

Ostrzeżenie: (0%)
-----


Witam, mam pytanie.
Wynik otrzymany w zapytaniu sql ładuję do tabeli:
tab[kol1][$i]
tab[kol2][$i]

Jak posortować tą tabelę wg np kol2 z uprzywilejowaną wartością z kol1?
tak by np wiersz który ma w kol2 daną wartość był pierwszy

Ten post edytował wojtekw 26.09.2007, 08:46:04
Go to the top of the page
+Quote Post
Cysiaczek
post 26.09.2007, 08:42:55
Post #2





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Po pierwsze - nie do tabeli tylko do tablicy.
Po drugie - Sortować mżesz już w SQL - użyj do tego kluzuli "ORDER BY nazwa_kolumny"
Jeśli jednek koniecznie chcesz sorotwać już w php, to powiem Ci, że musisz kombinować. Przekopiować tablice i po użyciu na kopi jakiejś funckji sortującej (z zachowaniem klucza $i) przenosić w pętli foreach() (użytej na posortowanej tablicy) dane z klucza kol1.

Lepiej jednak zrobić to w SQL.

Pozdrawiam.


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
wojtekw
post 26.09.2007, 08:51:16
Post #3





Grupa: Zarejestrowani
Postów: 101
Pomógł: 0
Dołączył: 11.09.2007

Ostrzeżenie: (0%)
-----


ok a jak zrobic w sql tak by dana wartość pomimo sortowania była zawsze pierwsza
Go to the top of the page
+Quote Post
Cysiaczek
post 26.09.2007, 08:59:29
Post #4





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




To to już sobie w php przenieś. Tak jak pokazałeś - używając identyfikatiora wiersza $i.

2 sposoby:

1.
Utwórz nową tablicę o strukturze takiej jak ta z danymi bazy danych i umieść w niej wiersz, który chcesz, aby był na początku.
Skasuj go z tablicy z danymi.
Uzyj array_merge" title="Zobacz w manualu PHP" target="_manual aby połączyć obie tablice.
Twoja wybrana wartoiśc będzie teraz na początku.

2.
Wstawienie wybranego wiersza na początek tablicy przy pomocy funckji array_unshift" title="Zobacz w manualu PHP" target="_manual

Pozdrawiam.


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
kt1
post 2.12.2007, 19:49:03
Post #5





Grupa: Zarejestrowani
Postów: 131
Pomógł: 3
Dołączył: 9.02.2006
Skąd: moree.webd.pl

Ostrzeżenie: (10%)
X----


hhe rozwiazełem :]
zapomaiłęm DESC dodac


--------------------
Jeśli masz jakieś fajne tutki albo coś inne związane z php mysql AJAX to wejdź
tu WEJDZ TU I DODAJ !!! :)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 29.06.2025 - 12:13