【问题标题】:Yii find condition >=Yii 找到条件 >=
【发布时间】:2011-03-17 05:35:34
【问题描述】:

我需要找到 summ>=250 的行

我正在做以下事情:

$criteria = new CDbCriteria;  
$criteria->condition ='summ >= 250';
$winnerBid = Bids::model()->find($criteria);

但我没有得到任何结果。 如何实施?

【问题讨论】:

  • 如何打印 $winnerBid 数组?
  • 表格中有“summ”列吗?您收到任何错误消息吗?
  • 尝试使查询首先在您的数据库中工作,是吗?然后把它翻译成yii。如果您没有 summ 列,那么您将不得不查看 sum() 函数以及“分组依据”和“有”子句

标签: php mysql activerecord yii


【解决方案1】:

我手头没有 Yii。 你有没有试过这个:

$criteria = new CDbCriteria;  
$criteria->addCondition('summ >= 250');
$winnerBid = Bids::model()->find($criteria);

如果summ 是正确映射的列,这应该可以工作。

【讨论】:

    【解决方案2】:

    会有用的,试试这个-

    $winnerBid = Bids::model()->find(array('condition'=>"summ >= 250"));
    

    【讨论】:

    • 请解释清楚你的答案
    【解决方案3】:
    $winnerBid = Bids::model()->find('summ >= 250');
    if ($winnerBid===null) {
        throw new CHttpException(400,'There is no record in your database with summ>=250.');
    }
    

    【讨论】:

      【解决方案4】:
      $criteria = new CDbCriteria;  
      $criteria->condition ='summ >= 250';
      $winnerBid = Bids::model()->findAll($criteria);
      

      由于您使用的是>=,因此您应该使用FindAll() 这应该可以解决您的问题。

      【讨论】:

        【解决方案5】:

        【讨论】:

          猜你喜欢
          • 2014-06-10
          • 2011-07-18
          • 1970-01-01
          • 1970-01-01
          • 2013-07-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多