A有这段代码:
DB::select('
SELECT SUM(count) as count
FROM (
SELECT COUNT(*) AS count FROM ad_banners
UNION ALL
SELECT COUNT(*) AS count FROM ad_context
UNION ALL
SELECT COUNT(*) AS count FROM ad_content
UNION ALL
SELECT COUNT(*) AS count FROM ad_decoration
UNION ALL
SELECT COUNT(*) AS count FROM ad_front
UNION ALL
SELECT COUNT(*) AS count FROM ad_universal
) as ad'
);
如何使用Eloquent ORM方法进行此查询,这是否有意义?提前谢谢!
修改
我写了这段代码,但是我使用Eloquent的尝试最终失败了。我不明白如何使用union和count进行子查询。我不会为我编写代码,这只是一个小例子。抱歉我的英语不好。
答案 0 :(得分:0)
您是否尝试过使用DB::raw()
方法?有时,如果您知道要使用的SQL但不知道如何使用Eloquent来完成它,您可以使用DB::raw()
来获得所需的结果。这是一个例子,你可以根据自己的需要定制它:
$query = DB::connection('connection_name')->select(DB::raw("SELECT * FROM table WHERE ..."));
此外,connection_name
可以在app/config/database.php
数组的connections
中找到{{1}}。
希望能提供一些见解。如果不了解您的模型和关系以及您想要实现的目标,就很难就此问题提出雄辩的解决方案。