![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 11.09.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam, używam w moim projekcie zend_db_select, którego to potrzebuję jako adapter dla zend_paginatora. Wszystko było ok, do czasu pojawienia się trudniejszych zapytań. Ułożyłem sobie w phpmyadminie takie zapytanie:
I mam spory problem z przerobieniem tego na prawidłowe zapytanie używając $select. PS - tutoriale oczywiście przejrzałem, nie znalazłem tam odpowiedzi. |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Hej, podpowiem Ci kilka rozwiązań:
1. Możesz użyć prostego zapytania jako "szkieletu" a podzapytania wpisać "z palca", np:
2. Możesz całe zapytanie wpisać "z palca" (paginator chyba daje taką możliwość, jest tam kilka opcji, można poeksperymentować) 3. Możesz utworzyć kilka selectów w jednej metodzie:
I wstawić jednego w drugi. Kombinuj ![]() |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 65 Pomógł: 2 Dołączył: 5.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
napisze Ci jutro bo już spadam ; )
Więc tak jak obiecałem - wykreśle Ci strukture $zapytanie = $this->select() ->setIntegrityCheck(false) ->from(array('t1'=>'tabela1'),array('kolumna1', 'kolumna2', 'id_z_tabeli1' => 'id', 'kolumna4')) ->join(array('t2'=>'tabela2'),'t1.kolumna=t2.kolumna', array('kolumna1', 'kolumna2')) ->join(array('t3'=>'tabela3'),'t2.kolumna=t3.kolumna',array('kolumna1', 'kolumna2', 'kolumna3')) ->where('t1.kolumna =?', $jakas_wartosc) ->where('t2.kolumna =?', $jakas_wartosc) ->order('t1.kolumna DESC) ->limit(0,100); Oczywiście bez zagłębianie się w twój przypadek, jeżeli chcesz jakies inne złączenia to zamień sobie na leftJoin czy co tam chcesz. Jak masz jakieś pytania to pisz ; ) Ten post edytował 5k7 24.10.2011, 16:59:55 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 07:16 |