我试图在 Laravel 中以多种方式运行此 SQL 查询,但它显示错误。
SELECT * FROM reservas WHERE cliente_id = 2201 AND dia >= '2020-10-15' GROUP BY dia
我尝试运行此查询,但出现违规错误
DB::select('SELECT * FROM reservas WHERE cliente_id = :id AND dia >= :date GROUP BY dia', ['id' => $id, 'date' => $date]);
我发送的变量是有数据的,即错误不是来自空变量,远非如此,而是错误来自于查询。 应该注意的是,这个查询在 SQL 中确实有效。
最佳答案
您需要像这样编写查询 groupBy(DB::raw('dia'))
\DB::table('reservas')->where('cliente_id',$id)->where('dia',$date)->get()->groupBy('dia');
如果您的 groupBy 无法正常工作,您需要在 config/database.php
中更改 false,例如 strict => false
。
希望它的工作!
关于mysql - 如何在 Laravel 中运行此 SQL 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64370937/