gpt4 book ai didi

mysql - Laravel 5.1 Eloquent orWhere 子查询

转载 作者:行者123 更新时间:2023-11-29 06:15:37 25 4
gpt4 key购买 nike

我对这个查询失去了理智。我真的需要这方面的帮助:

SELECT COUNT(*) FROM customers
WHERE (SELECT count(*) FROM customerEmails WHERE email = :email) > 0
OR (SELECT count(*) FROM customerPhoneNumbers WHERE phoneNumber = :cellphone) > 0
OR cellphone = :cellphone
OR email = :email

我不知道什么应该是 Eloquent 代码。 TIA!

最佳答案

你可以使用 Eloquent 的 whereHas (略高于该 anchor )方法根据与其他实体的关系有条件地加载 Customer。假设您有一个名为 Customer 的模型,您可以尝试:

$count = Customer::whereHas('customerEmails', function ($query) use ($email){
$query->where('email', $email);
})
->orWhereHas('customerPhoneNumbers', function ($query) use ($cellphone){
$query->where('phoneNumber', $cellphone);
})
->orWhere('cellphone', $cellphone)
->orWhere('email', $email)
->count();

关于mysql - Laravel 5.1 Eloquent orWhere 子查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36077338/

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