Jaký dotaz spojí dva cizí klíče s jednou tabulkou dvakrát?
- bumprask
- Člen | 59
Jak získat data z pomocí Database z tabulky, která má dva nezávislé sloupce, které odkazují na stejnou referenční tabulku? Myslím problém ne zas tak neobvyklí, ovšem takováto struktura uvádí zřejmě Nette Database do rozpaků…
Například mějme v tabulce OSOBA tyto atributy odkazující do tabulky ADRESA
OSOBA
jmeno,
prijmeni,
...
dorucovaci_addresa_id int (cizí klič do tabulky ADRESA)
fakturacni_addresa_id int (cizí klíč do tabulky ADRESA)
Jakým dotazem získat Table\Selection, který dokáže zpřístupnit data z tabulky ADRESA pro oba atributy tabulky OSOBA?
- bumprask
- Člen | 59
Jde o to, že potřebuji získat select, který vrátí třídu Nette\Database\Table\Selection nikoliv ActiveRow
Tedy snažím se o něco takového konkrétně a nejde to:
/** @var Nette\Database\Table\Selection **/
public $data;
...
//tento select ovšem nevygeneruje očekávaný SQL dotaz a nevím jak docílit podobného selectu, aby to fungovalo
$data = $this->table("nazev_tabulky")->select("dorucovaci_adresa.mesto AS d_mesto, fakturacni_adresa.mesto AS f_mesto")
Editoval bumprask (5. 3. 2013 22:19)
- bumprask
- Člen | 59
Hlavním důvodem proč to takhle potřebuju je třída, která obstará export dat do CSV, této třídě předám pouze hotový (najoinovaný) select z databáze a o nic víc se nestarám. Tedy potřebuju mít předem sestavená data pro výpis, nikoliv je sestavovat až v cyklu.
Editoval bumprask (5. 3. 2013 22:38)