【问题标题】:How to implement multiple conditions for single table column in PhalconPHPPhalconPHP中如何实现单个表列的多个条件
【发布时间】:2016-09-06 08:32:00
【问题描述】:

在status 为abanadoned 或completed 的计划中找到节省的资金总额的正确语法是什么:

$total = self::sum([
    'column' => 'amount_saved_so_far',
    'conditions' => 'status = "completed" AND user_id = :user_id:',
    //find plans with a status of abandoned as well
    'bind' => ['user_id' => $userId]
]);

【问题讨论】:

    标签: php mysql phalcon phalcon-orm


    【解决方案1】:

    你可以简单地做,这是完美的解决方案:

    $total = self::sum([
        'column' => 'amount_saved_so_far',
        'conditions' => '(status = "completed" OR status = "abanadoned") 
                         AND user_id = :user_id:',
        'bind' => ['user_id' => $userId]
    ]);
    

    或者另一种选择是使用数组绑定:

    $total = self::sum([
        'column' => 'amount_saved_so_far',
        'conditions' => 'status IN ({vars:array}) AND user_id = :user_id:',
        'bind' => [
            'vars' => ['completed', 'abanadoned'],
            'user_id' => $userId
        ]
    ]);
    

    第二个选项更优雅,更实用,以防您为 IN 子句设置更多值。

    【讨论】:

    • 你在第一个 sn-p 中忘记了绑定部分
    • 故意剥离示例以仅显示重要部分。
    • 因为它是初学者 phalconist 问题的答案,所以我会发布完整的代码。它仍然很短。但这只是我的意见。你的答案 - 你的规则
    • 你说服了我! :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-11
    • 2012-10-26
    • 1970-01-01
    相关资源
    最近更新 更多