My Laravel 5 app includes a dynamic query builder for report running. I need some group by clauses in there and have run into a problem. If I use actual sql in there I can have issues as sometimes there needs to be a sql command in amongst the sql (as opposed to straightforward column names), ie - DAYNAME(table_name.date_column). Laravel mangles this:

\`DAYNAME(table_name\`.\`date_column)\`

For the select part of my query I can use selectRaw, but there does not seem to be an equivaent for group by.

我曾想过使用别名(所有的 Select 都是别名),但Laravel也将它们包装成"`"字符.此外,我的应用程序需要同时使用MySQL和SQL Server,据我所知,后者不允许在查询的分组中使用别名.

我可以在illumb\Database\Query\Grammars\Grammar中找到编译group by的方法(compileGroups),我想我可以重写它,但我不太确定该怎么做(已经阅读了Laravel文档).

推荐答案

If you want to do raw groupBy, you can do something like this...

...->groupBy(DB::raw('some_alias'))

Laravel相关问答推荐

当使用Craftable PRO时,Wysiwig是什么时候生成的?

Laravel-如何按第三表关系对数据进行分类

如何在生产中的 laravel 应用程序中获取标头请求值?

Laravel 5.8 在从已清除的会话中单击注销后显示419 Page Expired

允许的内存大小 134217728 字节用尽(试图分配 20480 字节) Laravel

.gitignore 不忽略文件夹

限制 Blade foreach 循环中的结果

转储或 dd laravel 在结果前添加字符时出错

在 Laravel 5 中扩展请求类

控制器中的 Laravel Auth 用户 ID

Laravel Blade 没有额外的空格?

Cookie::forget 不工作 laravel 5.1

Laravel 5:在同一字符串上使用 bcrypt 给出不同的值

Laravel:验证 json 对象

Laravel Socialite 在本地主机上进行测试,SSL 证书问题?

Laravel 错误声明 App\Exceptions\Handler::report(Throwable $exception)

获取多列字段?

Laravel 4:分析器在哪里?

找不到 HOME 环境 -- 扩展 `~'

Laravel 将附加参数传递给函数