Laravel框架中WhereRaw、HavingRaw、OrderByRaw和SelectRaw的用法demo
laravel中的原生方法的使用
1.让我们快速开始我们从 WhereRaw 开始
$products = DB::table('products')
->whereRaw('price > IF(state = "TX", ?, 100)', [200])
->get();
2.havingRaw
Product::groupBy('product_id')->havingRaw('COUNT(*) > 1')->get();
3.orderByRaw
User::where('created_at', '>', '2022-01-01')
->orderByRaw('(updated_at - created_at) desc')
->get();
4.Eloquent selectRaw()
User::select("*")
->selectRaw('amount + ? as amount_with_bonus', [500])
->get();
另一个例子
User::select("*")
->select('*', DB::raw('amount + 500 as amount_with_bonus'))
->get();
ps:
原生表达式将会被当做字符串注入到查询中,因此你应该小心使用,避免创建 SQL 注入的漏洞
相关文章