本文整理汇总了PHP中Cake\ORM\Query::func方法的典型用法代码示例。如果您正苦于以下问题:PHP Query::func方法的具体用法?PHP Query::func怎么用?PHP Query::func使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Cake\ORM\Query
的用法示例。
在下文中一共展示了Query::func方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: findWithCount
public function findWithCount(Query $query, array $options)
{
$query->select(['count' => $query->func()->count('Users.id')]);
$query->matching('Users');
$query->group(['UserRoles.id']);
return $query;
}
示例2: apply
/**
* {@inheritdoc}
*/
public function apply($fromAlias, $fromIdentifier, $resourcePrefix, array $requesterIdentifiers, $mask, array $orX = [])
{
$this->query->join(['table' => $this->getAclSchema()->getPermissionsTableName(), 'alias' => 'acl_p', 'type' => 'LEFT', 'conditions' => $this->query->newExpr()->eq('acl_p.resource', $this->query->func()->concat([':acl_resource_prefix' => 'literal', $fromAlias . '.' . $fromIdentifier => 'literal']))]);
$orX[] = $this->query->newExpr()->and_([$this->query->newExpr()->in('acl_p.requester', $requesterIdentifiers, 'string'), $this->query->newExpr(':acl_mask = (acl_p.mask & :acl_mask)')]);
$this->query->andWhere($this->query->newExpr()->or_($orX));
$this->query->bind(':acl_resource_prefix', $resourcePrefix);
$this->query->bind(':acl_mask', $mask, 'integer');
return $this->query;
}
示例3: findMeetingsThisMonth
public function findMeetingsThisMonth(Query $query, $options = [])
{
$defaultOptions = ['results' => 5];
$options = array_merge($defaultOptions, $options);
// override defaultoptions
$dateFrom = new DateTime('first day of this month');
$query->hydrate(false)->select(['Users.name', 'totalMeetings' => $query->func()->count('Meetings.id')])->matching('Meetings')->where(['Meetings.date >=' => $dateFrom->format('Y-m-d')])->group(['Users.name'])->orderDesc('totalMeetings')->limit($options['results']);
return $query;
}
示例4: findAveragePerYear
public function findAveragePerYear(Query $query, $options = [])
{
$year = $query->func()->year(['Salaries.from_date' => 'literal']);
return $query->select(['year' => $year])->find('average')->group([$year]);
}
示例5: findWorldLifeExpectancy
public function findWorldLifeExpectancy(Query $query)
{
return $query->select(['avg' => $query->func()->avg('life_expectancy')]);
}
示例6: findFemaleRatio
public function findFemaleRatio(Query $query, $options = [])
{
$allManagers = $this->find()->select($query->func()->count('*'));
return $query->find('female')->select(['female_ratio' => $query->newExpr($query->func()->count('*'))->add($allManagers)->type('/')]);
}
示例7: findAverageLifeExpectancy
public function findAverageLifeExpectancy(Query $query)
{
return $query->select(['average_exp' => $query->func()->avg('life_expectancy')]);
}
示例8: findVencido
public function findVencido(Query $query, array $options)
{
return $query->find('pago')->where(['vencimento <' => $query->func()->now()]);
}