gpt4 book ai didi

mysql - 使用复杂的 AND OR 将 SQL 转换为 Laravel 查询生成器

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

我有一个这样的查询-

SELECT * FROM subscribers_lists
WHERE Country='Germany'
AND (City='Berlin' OR name LIKE '%Mün%');

我想将其转换为 Laravel 查询构建器的查询。所以,我所做的是 -

DB::table('Customers')
->where('subscribers_lists.Country', '=', $user_country)
->or_where('subscribers_lists.City', '=', $user_city)
->or_where('subscribers_lists.name', 'like', '%' . $searchParameter . '%');

但它运行得并不完美。请问有什么建议吗?

感谢您的帮助。

最佳答案

您可以使用闭包来创建复杂的部分。

DB::table('subscribers_lists')
->where('subscribers_lists.Country', '=', $user_country)
->where(function($query) use ($user_city, $searchParameter) {
$query->where('subscribers_lists.City', '=', $user_city)
->orWhere('subscribers_lists.name', 'like', '%' . $searchParameter . '%');
});

您可以在文档here中阅读有关高级查询的更多信息。

关于mysql - 使用复杂的 AND OR 将 SQL 转换为 Laravel 查询生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32794126/

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