Próba znalezienia zagnieżdżonego zaznaczenia przy użyciu Zend\Db\Sql\Select
i nie może nic zobaczyć w dokumentacji lub w google.Zagnieżdżanie Wybierz za pomocą ZF2
Chcąc zrobić coś takiego:
SELECT
table1.*,
(SELECT x,y,z FROM table2 WHERE table2.a = table1.a) as b
FROM table1
Bez czegoś zagnieżdżonych select, by to wyglądać tak:
$select = new Zend\Db\Sql\Select;
$select
->columns(array(
'*'
))
->from('table1')
ZF1 wyglądała o tworzeniu elementu podselekcji a następnie dodanie go jako Wyrażenie wewnątrz listy kolumn, ale w ZF2 narzeka na wyrażenie, które musi być łańcuchem.
Edytuj: Wybór zagnieżdżony musi być kolumną, ponieważ kończę pomnożonymi wierszami podczas korzystania z GROUP BY na tej samej nazwie kolumny. Jest to prawidłowe zapytanie Próbuję dostać się Zend\Db\Sql\Select
:
SELECT
users.id,
(SELECT count(explorations.id) FROM explorations WHERE user_id = users.id) as total_explorations,
count(villages.id)
FROM
users
INNER JOIN
villages
on (villages.user_id = users.id)
GROUP BY
users.id
To jest obecnie to, do czego wróciłem, ponieważ nie byłem w stanie tego zrobić. Właśnie napisałem SQL na surowo, jak powiedziałeś, ale potem połowa jest wyodrębniana, a druga połowa jest surowa: D Myślałem, że ZF2 po prostu pozwoli na to w sekcji kolumn –