Jak na použití SELECT v table() a vybrání více tabulek?

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
kikinet
Člen | 35
+
0
-

Ahoj,

mám tento dotaz:

$this->database->table('seats_layout')->where('seats_layout_is_active', '1')->where($filters)->select('id_seats_layout, seats_layout_name, events.events_name');

Ten však vyhazuje No reference found for $seats_layout->events.
V tabulce seats_layout totiž není cizí klíč pro tabulku events.

Fungující dotaz v mysql vypadá takto:

SELECT events.events_name, seats_layout.seats_layout_name
FROM seats_layout,
     (SELECT id_seats FROM seats, seats_layout WHERE seats_seats_layout_id = id_seats_layout) as j_seats
JOIN zones_seats
  ON seats_id = j_seats.id_seats
JOIN zones_group
  ON id_zones_group = zones_seats.zones_id
JOIN events
  ON id_events = zones_group_events_id
GROUP BY events_name

Jak na takový dotaz? Seknu se už na bodě, kdy v příkazu FROM provádím SELECT.
Děkuji

Editoval kikinet (29. 4. 2015 18:18)

Pavel Kravčík
Člen | 1196
+
+1
-

Na takové příkazy se dá použít query, ale musíš si ty data pak zpracovat do entit nebo tvé logiky

$this->database->query()->fetchAll();