我有一些原始查询的资料库,例如:Laravel缓存原始查询
DB::select(DB::raw(
'SELECT stuffFields
FROM stuffTable
A NUMBER OF COMPLEX JOINS, ETC'
));
我想缓存从这个查询的结果,但我遇到了一些问题:
1)我不能这样做 - >记住(60),因为Fluent查询不是以table()方法启动的。
2)我不能这样做
DB::table('stuffTable')
->select(DB::raw(
'stuffFields
A NUMBER OF COMPLEX JOINS, ETC'
))->get();
因为有这些连接和FROM子句中得到的查询结束(在加入之后附加),而这将引发SQL语法错误。我不能带出join()方法中的连接,因为它们包含嵌套查询(是否有执行rawJoin()的方法...我找不到那样的东西?)。
任何人都可以提出一种方法来重组Fluent调用或缓存这种原始查询的常见方法吗?
如果使用查询参数,这将不起作用,不幸的是,除非模拟预准备语句,否则没有好的方法可以从PDO中取代带有替代参数的sql。 – 2015-07-28 04:39:15