php - 具有 Dotrine 的累积 DQL

标签 php doctrine sum dql

我很难制定出适当的 DQL 来生成累积和。我可以用普通 SQL 来完成,但是当涉及到 DQL 时我无法掌握它。

下面是它在 SQL 中的样子:

 SELECT s.name, p.date_short, p.nettobuy,
    (选择 sum(pp.nettobuy) 作为价格 pp 的总和,其中 pp.stock_id = p.stock_id 且 p.broker_id = pp.broker_id 且 pp.date_short <= p.date_short)作为cumulative_sum
从价格p
    在 p.stock_id = s.id 上左连接股票 s
    按 p.stock_id、p.date_short 分组
    按 p.stock_id、p.date_short 排序

谢谢

最佳答案

嘿,我查了Doctrine 1.2的文档,创建查询的方法是(注意别名):

$query = Doctrine_Query::create();
$query->addSelect('AVG(price) as price');
$query->addSelect('AVG(cost) as cost');
// as many addSelect() as you need
$query->from('my_table');

输出创建的 SQL 查询:

echo $query->getSqlQuery();

执行语句:

$product = $query->fetchOne();

访问检索到的数据是:

echo $product->getPrice();
echo $product->getCost();

阅读文档的其余部分:Group By Clauses .

关于php - 具有 Dotrine 的累积 DQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1513384/

相关文章:

mysql - 更快相当于 mysql inner join with sum

php - 在生产环境中运行的应用程序中 Laravel 页面为空白

php - 无法烘烤 CakePHP - 为蛋糕/控制台/蛋糕设置 chmod +x 时权限被拒绝 - 在 NTFS 安装分区上

php - 可以使用多个/嵌套的 MySQLi 语句吗?

php - 将数据插入多对多表 Symfony

php - incallingMocker::with() 实际上做了什么?

php - Doctrine 1.2 自动加入 i18n?

php - Laravel 返回 Patchwork\\utf8\\Bootup 错误

python 如何像 zlib.adler32 一样快速地计算一个简单的校验和

grails - grails:将所选值相加