Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem z pod zapytaniem
makusik
post 4.09.2006, 11:31:16
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 19.03.2006
Skąd: Zielona Góra

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


mam takie zapytanie:

SELECT * FROM (SELECT * FROM posts WHERE (title like '%%' or body like '%%') ORDER by id DESC) GROUP BY id_posts


chce nim osiagnac to zeby najpierw posty mi sie posegregowaly w kolejnosci odwrotnej a dopiero potem przeprowadzic na nim operacje group

niestety wyskakuje mi komunikat :

Every derived table must have its own alias


byc moze jest jakies inne rozwiazanie tego bez podzapytania

dzieki z gory za pomoc
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
bigZbig
post 4.09.2006, 13:10:54
Post #2





Grupa: Zarejestrowani
Postów: 740
Pomógł: 15
Dołączył: 23.08.2004
Skąd: Poznań

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


Cos Ty napisal?
1 W klauzuli FROM podajesz wynik innego zapytania a powinna byc nazwa tabeli
2. Klauzula WHERE jest bez sensu. Rozumiem, ze chodzi o to aby title lub body nie bylo null.
3. Klauzula ORDER jest zawsze wykonywana po GROUP BY i nawiasy nie maja tu znaczenia.

Poza tym chyba nie wiesz do czego sluzy grupowanie. Moze wystarczy zwykle proste zapytanie.

  1. SELECT * FROM posts WHERE (title <> NULL OR body <> NULL) ORDER BY id_post DESC


--------------------
bigZbig (Zbigniew Heintze) | blog.heintze.pl
Go to the top of the page
+Quote Post
makusik
post 4.09.2006, 17:30:36
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 19.03.2006
Skąd: Zielona Góra

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


no wlasnie prostego zapytania nie chce smile.gif) moze niezbyt jasno sie wyrazilem, ale juz rozwiazalem swoj problem innym sposobem smile.gif) dzieki
Go to the top of the page
+Quote Post
pitbull82
post 24.09.2006, 08:41:27
Post #4





Grupa: Zarejestrowani
Postów: 167
Pomógł: 0
Dołączył: 30.04.2004
Skąd: Częstochowa

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


Trochę po czasie ale z komunikatem chodziło o to, że jeśli w FROM mamy podzapytanie, to rezultat musi mieć ALIAS.

Zamiast:

  1. SELECT * FROM (SELECT * FROM posts WHERE (title LIKE '%%' OR body LIKE '%%') ORDER BY id DESC) GROUP BY id_posts


powinno być


  1. SELECT tabela.* FROM (SELECT * FROM posts WHERE (title LIKE '%%' OR body LIKE '%%') ORDER BY id DESC) AS tabela GROUP BY id_posts


Pozdrawiam


--------------------
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: 27.07.2025 - 04:37