0
我试图用Propel执行选择,它只返回计算列,但我总是选择其他列。在Propel中只选择计算列
例如:
$criteria = new MuestraQuery();
$criteria->clearSelectColumns()
->addAsColumn('numEspesores', 'count(distinct muestra.sal_espesor)')
结果查询:
SELECT muestra.sal_id, muestra.sal_regimen,
-- ...
-- (ALL FIELDS OF THE TABLE HERE...)
-- ...
count(distinct muestra.sal_espesor) AS numEspesores
FROM muestra
我已经能够减少场的数量来选择只包括一个字段。例如,下面的查询只返回两个字段:
$criteria = new MuestraQuery();
$criteria->clearSelectColumns()
->select(MuestraTableMap::COL_SAL_ID)
->addAsColumn('numEspesores', 'count(distinct muestra.sal_espesor)')
结果查询:
SELECT count(distinct muestra.sal_espesor) AS numEspesores,
muestra.sal_id AS "muestra.sal_id"
FROM muestra
¿有没有办法在行走只选择计算列?
我见过列在ModelCriteria->doSelect()
基于保护ModelCriteria->isSelfSelected
属性,它在ModelCriteria->select()
设置,但不因为它是从标准的,它不是在ModelCriteria重写增加。
不知道这是一个错误还是我正在做一件坏事。