Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Poprzednie i następne rekordy, UNION ALL i zróżnicowane sortowanie
Vience
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 9.06.2012

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


Witam serdecznie,
bawię się w pisanie CMSa i mam mały problem z galerią zdjęć, a w zasadzie to z połączeniem zapytań do pobrania miniaturek do nawigacji.
  1. (SELECT uphoto_id, uphoto_minic FROM
  2. (SELECT uphoto_id, uphoto_minic FROM cms_userphoto WHERE `uphoto_id` <= 34 AND uphoto_album='4' ORDER BY uphoto_id DESC LIMIT 3) AS t1
  3. ORDER BY uphoto_id ASC)
  4. UNION ALL
  5. (SELECT uphoto_id, uphoto_minic FROM (SELECT uphoto_id, uphoto_minic FROM cms_userphoto WHERE `uphoto_id` > 34 AND uphoto_album='4' ORDER BY uphoto_id ASC LIMIT 2) AS t1 ORDER BY uphoto_id ASC)

O ile pojedyncze zapytania dobrze pobierają dane, zgodnie z moim pomysłem czyli mniej więcej z pierwszego zapytania zdjęcia o ID 32, 33, 34 a z drugiego 35 i 36, tak z tego z union all wychodzi w kolejności 34, 33, 32, 35 i 36.

Jestem flamingiem jeśli chodzi o SQL, bądźmy szczerzy, a w tym projekcie postanowiłem sobie postawić czoła różnym zagadnieniom przed którymi zawsze uciekałem stosując mało ekonomiczne rozwiązania - nie wiem czy to jest najoszczędniejsze, ale na pewno bardziej niż 20 zapytań do jednego elementu. Kombinowałem na kilka sposobów, grzebałem trochę w internecie, ale żaden nie pomagał. Co robię źle?

Z góry dziękuję za odpowiedzi.

Ten post edytował Vience 12.08.2013, 20:35:29
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 23.08.2025 - 05:04