Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: alfabetyczne segregowanie
Forum PHP.pl > Forum > PHP
invx
pobieram dane z bazy

Kod
wybierz z tabela11
{
   wybierz z tabela2 gdzie lgoin=tabela1[id_usera]
   {
        tabela1[aaa];tabela2[login];
   }

}


i chce dane posegregowac wg loginu z tabeli2 ... jesli dam ORDER BY login w drugim zapytaniu, niedziala ...

moze jakos do tablicy przypisac najpierw dane i potem multi_sort() questionmark.gif pomózcie
NuLL
Napewno dziala tylko cos schrzaniles.
SongoQ
@invx Twierdziesz ze optymalizator nie rozumie Twojego poprawnego kodu SQLa?

Napisz zapytanie jakie wysylasz do bazy, wtedy ktos CI pomoze, trudno jest zgadnac jakie masz tam zapytanie.
bendi
Moja szklana kula coś mówi, że bazka zwraca komunikat o dwuznaczności kolumny, penwie zapytanie wygląda jakoś tak:

Kod
SELECT * FROM tabela1 JOIN tabela2 using( id ) ORDER BY login;


No i okazuje się, że mając w obu tabelach kolumnę login zapytanie nie chce działać, a baza zwraca jakiś tajemniczy błąd (ambiguous).

Proponuję tak:
Kod
SELECT
   *
FROM
   tabela1 t1
   JOIN tabela2 t2 USING( id )
ORDER BY
   t2.login


... ale to tylko szklana kula i może się mylić...
bigZbig
A moim zdaniem kolega nie umie poprostu tworzyc zapytan pobierajacych dane z wiecej niz jednej tabeli

Mozna tez tak

Kod
SELECT * FROM table1 t1, table2 t2 WHERE t1.id=t2.id ORDER BY t2.login;


W sumie to rownoznaczne z powyzszym ale bardziej intuicyjne dla poczatkujacych zwlaszcza przy laczeniu danych z wiekszej liczby tabel.
SongoQ
Spoko podobaja mi sie te posty, pytanie wsumie nie padlo a kazdy ma jakas wizje gdzie ewentualnie invx zrobil blad. Moze tak zaczniemy przewidywac przyszlosc?

Zamykam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.