gpt4 book ai didi

php - CakePHP/MySQL : find with a condition for model itself and an assigned model

转载 作者:行者123 更新时间:2023-11-29 12:34:12 24 4
gpt4 key购买 nike

考虑一下,我们有用户,用户有帐户(一对多)。现在我完全陷入了以下问题:我们提供 $query 并希望返回所有用户:

  • 全名 LIKE %$query% OR
  • 电子邮件地址类似于 %$query%
  • 拥有帐户的人,其中组织 LIKE %$query%

我已经尝试过连接和可遏制行为,但没有成功。通过连接,我们可以实现这一点,但问题是,数据不是以蛋糕的方式结构化的(即使同一用户出现多次,我们也只能得到一行专业匹配)。对数据进行排序是不行的,因为这个 Controller 必须非常快。

救命!

最佳答案

尝试使用 -

$this->User->find(
'all',
array(
'conditions' => array(
'OR' => array(
'User.fullname LIKE' => '%'.$query.'%',
'User.email LIKE' => '%'.$query.'%',
'Account.organisation LIKE' => '%'.$query.'%',
),
),
'contain' => 'Account',
)
);

使用别名 -

$qry = "select * from users as u, accounts as a where u.fullname like %$query% or u.emaillike %$query% or a.organisation like %$query%";
$results = $this->query($qry);

关于php - CakePHP/MySQL : find with a condition for model itself and an assigned model,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27039781/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com