tiny ‘n’ smart
database layer

Odkazy: dibi | API reference

Oznámení

Omlouváme se, provoz fóra byl ukončen

fluent from – více tabulek

před 9 lety

maarlin
Člen | 207

Možná trochu stupidní dotaz, ale proč metoda from nepřijímá více parametrů, jakožto více tabulek, vždy je nutno uvést jeden parametr (string) a tabulky uvnitř oddělit čárkou.
tzn. nejde udělat toto:

$connection->select('*')->from('table1', 'table2');

je opravdu nutný následující zápis?

$connection->select('*')->from('table1,table2');

Spíš se mi jedná o případy, kdy ty názvy tabulek mám v proměnných, tzn. např takto:

$connection->select('*')->from($tableName1.','.$tableName2);

před 9 lety

Ondřej Mirtes
Člen | 1539

Co udělá ->from('table1')->from('table2') ?

před 9 lety

maarlin
Člen | 207

Ondřej Mirtes napsal(a):

Co udělá ->from('table1')->from('table2') ?

Selectuje pouze z jedné tabulky.

Ale i kdyby to tak fungovalo, není to zcela to, co bych si představoval… Existuje nějaký důvod, proč nemít

->select('*')->from('table1', 'table2')

?

před 9 lety

David Grudl
Nette Core | 6806

Tuším by mělo fungoval ->from(array('table1', 'table2')). Ona to zas tak používaná konstrukce není, protože se spojení tabulek obvykle dál rozvíjí přes join(), innerJoin() apod, nicméně dvojitý from() by fungovat mohl.

Snad tím, že jsem ho povolil (v poslední revizi), nikomu nic nepokazím.