PHP Propel - add a column (with a sub select) to an result
Assuming you want to add a counting column like "number_of_foo" but you want to use your propel environment. Propel, of course, provides a way how you can achive this.
$criteria = new Criteria();
$criteria->addAsColumn(
'number_of_foo',
'SELECT
COUNT(*)
FROM
' . FooPeer::TABLE_NAME . '
WHERE
' . FooPeer::BAR_ID . ' = ' . BarPeer::ID . '); )
"Quelle surprise", propel can deal with that also in the cooler query way.
$result = BarQuery::create()->addAsColumn(
'number_of_foo',
'SELECT
COUNT(*)
FROM
' . FooPeer::TABLE_NAME . '
WHERE
' . FooPeer::BAR_ID . ' = ' . BarPeer::ID . ');
)
source